Ich sehe mir ein Shell-Skript an, das Folgendes enthält:
set +e
set -x
Ich sehe, dass die Befehle verwendet werden, um "einer Shell-Variablen einen Wert zuzuweisen". Aber in diesem Zusammenhang verstehe ich die Verwendung nicht.
Ich sehe mir ein Shell-Skript an, das Folgendes enthält:
set +e
set -x
Ich sehe, dass die Befehle verwendet werden, um "einer Shell-Variablen einen Wert zuzuweisen". Aber in diesem Zusammenhang verstehe ich die Verwendung nicht.
Antworten:
Dieser Stil zum Festlegen oder Deaktivieren von Shell-Optionen. Verwirrend - setzt die Option und + deaktiviert die Option.
Option "e" macht den Shell-Skriptfehler immer dann aus, wenn ein Befehl ausfällt. Es ist im Allgemeinen eine gute Idee, es die meiste Zeit aktiviert zu haben.
Mit der Option "x" druckt die Shell Befehle aus, nachdem ihre Parameter erweitert wurden, aber bevor sie ausgeführt werden. Nützlich beim Debuggen, kann aber manchmal überwältigend werden.
Weitere Informationen finden Sie unter https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html (diese Dokumentation ist für Bash gedacht, aber viele der Funktionen sind in vielen Shells gleich).