1Danke
ERLEDIGT
JA
JA
ANTWORTEN
8
8
ZUGRIFFE
1126
1126
EMPFEHLEN
-
14.12.08 16:27 #1
Hallo zusammen.
Ich würde gerne einen Befehl zur Bash hinzufügen.
Klingt komsich, ist aba so.
Ich habe ein script mit dem namen "tree" und möchte es gerne durche infaches Namen-nennen öffnen können, unabhängig davon in welchem Verzeichnis ich mich befinde.
Ich habe schon viel gegooglet, aber immer wenn ich das, was dort stand angewandt/ausprobiert habe, hats nicht geklappt.die ärzte | Wizo | Patti Smith
Wer die nich kennt der verpasst was
-
Hallo,
dafür musst du deine PATH Umgebungsvariable auf das Verzeichnis erweitern indem dein Skript liegt, wie unter Windows auch:
Code bash:1
export PATH=$PATH:/dir/to/your/binary
Oder du legst dein Skript in eines der Verzeichnisse ab welche Defaultmäßig bei dir im Path schon aufgenommen sind.
Welche das sind kannst du herausfinden wenn du dir den Inhalt von PATH anschaust:
Code bash:1
echo $PATH
Gruß,
RedWing"I'm not deaf, I'm ignoring you"
----
-
Der erste Ansatz ist nur die halbe Wahrheit ... auf diese Art würde das Verzeichnis nur temporär in die PATH-Variable kommen. Am besten suchst du dir ein Verzeichnis in das du alle deine persönlichen Bins, die nicht durch ein Paketmanagement installiert wurden packst. Etwa /home/deinBenutzer/bin (kurz ~/bin), legst dieses mittels
Code :1
mkdir ~/bin
an und kopierst deine Binary hinein. Nun zur Path-Variable. Gebe folgende Komandos in deine Shell ein:
Code :1 2 3
cd /etc/profile.d sudo nano homebins.sh
In die nun von Nano erstellten Textdatei schreibst du folgendes:
Code :1 2 3
#!/bin/sh export PATH=$PATH:~/bin
Nun speicherst du indem du Strg + X zum beenden drückst und mit Yes/Ja bestätigst. Jetzt muss das erstellte Skript nur noch ausführbar gemacht werden mit dem Befehl:
Code :1
sudo chmod +x homebins.sh
Beim nächsten Neustart wird dieses Skript nun automatisch ausgeführt sowie bei jedem weiteren Systemstart. Solltest du die Änderungen sofort anwenden wollen nutze den Befehl
Code :1
source /etc/profile
Albert Einstein sagte einmal:
Es gibt 2 Dinge die unendlich sind: Das Universum und die Dummheit der Menschen. Beim Ersten bin ich mir allerdings nicht ganz sicher.
Stoppt die Vorratsdatenspeicherung!
-
15.12.08 13:57 #4
Danke, klappt perfekt
die ärzte | Wizo | Patti Smith
Wer die nich kennt der verpasst was
-
16.12.08 01:11 #5
- Registriert seit
- Sep 2007
- Ort
- kurzfristig wieder Passau
- Beiträge
- 295
@Raubkopierer
Warum so umstaendlich ueber ein eigenes Script, das doch immer wieder angepasst werden muss?
@Threadersteller
mit alias kann auch ein Aufruf mit einem Pseudonyom im Bashsinne belegt werden ... alias-Zuweisungen kommen am besten in die /etc/bashrc fuer globale Einstellungen oder ~/.bashrc fuer Userspezifische Einstellungen ...
Syntax:
alias neuer_Befehl='alter_Befehl' .... der neue_Befehl bezeichnet den neuen Aufrufnahmen ... alter_Befehl den entsprechenden Aufruf, wie er frueher mit allen Schaltern und Optionen aufgerufen wurde.Mir hat ein Artikel, auf den ich hier gestossen bin sehr gefallen. Deswegen hat er es mal verdient, meine sonst leeren Sigs zu schmuecken:
Linux ist nicht Windows!
Ich bitte alle, die auf dem jeweils anderen OS rumhacken erst diesen Artikel zu lesen.
-
Da man so ein festes Verzeichnis im Path hat wo man alle eigenen Binaries hinschieben kann? Natürlich kann man für jede Binary alias 'path/to/file = name machen ... und muss dann jeden dieser Einträge dann wieder aus der bashrc entfernen. Oder aber man macht ein Skript, dass die Umgebungsvariable neu setzt. Ob man das nun in der Bashrc macht oder nicht ist ja egal. Nur wenn man die Shell wechselt müsste man wieder in deren Konfig-Datei die Befehle schreiben. So denke ich der 'umständliche Weg' ist in diesem Fall der effektivste
Albert Einstein sagte einmal:
Es gibt 2 Dinge die unendlich sind: Das Universum und die Dummheit der Menschen. Beim Ersten bin ich mir allerdings nicht ganz sicher.
Stoppt die Vorratsdatenspeicherung!
-
23.12.08 01:21 #7
- Registriert seit
- Sep 2007
- Ort
- kurzfristig wieder Passau
- Beiträge
- 295
Die Shell wechselt? Ich zumindest bleibe eigentlich auf einem System immer bei einer Shell ... wenn de ne Subshell aufmachst wird ja weiter vererbt ... da isses also vollkommen wurst, vor allem da bei jeder Subshell die .bashrc ausgewertet wird.
Solange man also nicht dauernd zwischen bash, sh, ksh und/oder csh rumspringt reicht ein aendern der grundlegenden Configdatei.Mir hat ein Artikel, auf den ich hier gestossen bin sehr gefallen. Deswegen hat er es mal verdient, meine sonst leeren Sigs zu schmuecken:
Linux ist nicht Windows!
Ich bitte alle, die auf dem jeweils anderen OS rumhacken erst diesen Artikel zu lesen.
-
und genau dieses Wechseln der Shell meinte ich. Nicht jeder ist mit Bash zufrieden und man sollte diese eventualität schon berücksichtigen.
Albert Einstein sagte einmal:
Es gibt 2 Dinge die unendlich sind: Das Universum und die Dummheit der Menschen. Beim Ersten bin ich mir allerdings nicht ganz sicher.
Stoppt die Vorratsdatenspeicherung!
-
23.12.08 19:35 #9
- Registriert seit
- Sep 2007
- Ort
- kurzfristig wieder Passau
- Beiträge
- 295
mag sein, aber wer nutzt mehr als eine Shell auf einem OS? Fuer die anderen Shells gibts entsprechende Configdateien, und solang man nicht fuer jede Anwendung ne andere Shell nimmt, reicht es vom Aufwand her vollkommen, das zu Fuss per Editor einzutragen.
Mir hat ein Artikel, auf den ich hier gestossen bin sehr gefallen. Deswegen hat er es mal verdient, meine sonst leeren Sigs zu schmuecken:
Linux ist nicht Windows!
Ich bitte alle, die auf dem jeweils anderen OS rumhacken erst diesen Artikel zu lesen.
Ähnliche Themen
-
[BASH]
Von Alex Duschek im Forum Sonstige SprachenAntworten: 2Letzter Beitrag: 06.05.10, 15:10 -
Bash per SSH - Befehl bei Logout
Von alois im Forum Linux & UnixAntworten: 2Letzter Beitrag: 29.05.06, 18:46 -
Bash <TAB>
Von kevkev im Forum Linux & UnixAntworten: 6Letzter Beitrag: 18.01.06, 19:05 -
Wie kann ich in die rechen Maustaste einen Befehl hinzufügen?
Von LogIC_FloP im Forum Visual Basic 6.0Antworten: 4Letzter Beitrag: 01.06.04, 14:36 -
C vs bash
Von webfreak im Forum Linux & UnixAntworten: 1Letzter Beitrag: 04.04.04, 10:23





Zitieren
Login





