Archiv verlassen und diese Seite im Standarddesign anzeigen : Ausführung von Skripten
Hallo!
Ich habe mal ne dumme Frage - ich nutze es zwar weiß aber nicht wieso.
Wo ist der unterschied, wenn ich ein Skript mit
./skriptname oder mit
. skriptname starte???
Vielen Dank im voraus..
Hi Sorehead.
Steht in der bash-Manpage. "." verhält sich wie der Befehl "source":
[...]
. filename [arguments]
source filename [arguments]
Read and execute commands from filename in the current shell environment and return the exit status of the last command executed from filename.
[...]
;)
E2
Hmm, das verstehe ich dann aber nciht.
Ich habe einSkript welches mit Environment-Vairablen setzen soll.
Und das funktioniert nur mit
. set_env.sh
http://www.linuxforen.de/forums/showthread.php?t=216754
Klarer Fall. Mit ./skriptname wird eine neue Shell gestartet, und die Umgebungsvariablen sind futsch, sobald das Skript durchgelaufen ist und die neue Shell beendet wird. Mit . skriptname werden alle Befehle in der aktuellen Shell ausgeführt (execute commands from filename in the current shell). Die Variablen bleiben erhalten.
Ahhhh :D
Ok, dann ist klar...
Vielen Dank!!!!
Wobei das eine mit dem anderen nicht viel zu tun hat: ./ gibt nur explizit an, daß sich die auszuführende Datei im gleichen Pfad befindet. Gibst du kein ./ an, wird $PATH durchsucht, was u.U. woanders zuerst fündig wird.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.