source some_file
some_file:
doit ()
{
echo doit $1
}
export TEST=true
Wenn ich some_file schreibe, sind die Funktion "doit" und die Variable TEST in der Kommandozeile verfügbar. Aber dieses Skript ausführen:
script.sh:
#/bin/sh
echo $TEST
doit test2
Gibt den Wert von TEST zurück, generiert jedoch einen Fehler bezüglich der unbekannten Funktion "doit".
Kann ich die Funktion auch "exportieren" oder muss ich some_file in script.sh angeben, um die Funktion dort zu verwenden?
#!/bin/shempfiehlt sich jedoch, sie zu verwenden #!/bin/bash, um Probleme zu vermeiden, wenn die Standard-Shell nicht bash ist.
#!/bin/shzu#!/bin/bashund nachdoit() {...}nurexport -f doit