Aliase/Funktionen exportieren
Moritz
- webserver
0 eddi0 Christian Seiler
Hallöchen,
ich habe folgendes Script "startup" angelegt und mit chmod ausführbar gemacht:
-- snip --
#!/bin/bash
uptime
function l() {
ls -lA --color=auto $*
}
export -f l
-- /snip --
In meiner .bashrc-Datei rufe ich das Script auf. Der uptime-Befehl wird beim nächsten Login auch brav ausgeführt. Leider ist "l" trotz des Exports nicht verfügbar. Kann mir jemand mal einen Schubs geben, woran das liegen könnte?
Danke!
Moritz
Hallo,
In meiner .bashrc-Datei rufe ich das Script auf.
schreibe Dir doch einfach einen alias-Eintrag in die .bashrc:
alias myfunc="uptime && ls -lA --color=auto $*"
Gruß aus Berlin!
eddi
Hallo Moritz,
In meiner .bashrc-Datei rufe ich das Script auf. Der uptime-Befehl wird beim nächsten Login auch brav ausgeführt. Leider ist "l" trotz des Exports nicht verfügbar. Kann mir jemand mal einen Schubs geben, woran das liegen könnte?
Wenn Du in Deine .bashrc »startup« reinschreibst, dann wird ein neuer Shell-Prozess erzeugt, der führt dann das Script aus und dort wird dann die Funktion exportiert. Danach beendet sich der Prozess und gibt die Kontrolle wieder an die eigentliche Shell zurück -> der Export ist weg.
Schreibe
source startup
oder
. startup
in Deine .bashrc, das ist wie eine Art "include", das die Datei in die aktuelle einbinden, damit bleibt das export auch bestehen, da dann *keine* neue Shell dafür gestartet wird.
Viele Grüße,
Christian