Ich möchte in einem Bash-Skript abfragen, in welchem Modus es selbst ausgeführt wird, d.h. es geht mir um diesen Unterschied:
Skript wird in einem eigenen Prozess gestartet, also z.B.:
./Skript
oder: Skript wird von einer Instanz von bash per source-Kommando eingelesen:
. Skript
(Gibt es weitere Fälle zu berücksichtigen?)
Ich habe schon herausgefunden, dass im ersten Fall die Variable $0
auf den Namen des Skripts lautet und im zweiten Fall einfach "bash
".
Gibt es andere (bessere?) Methoden zu Unterscheidung?