Manchmal, wenn ich Befehle ausführe, wird keine Ausgabe angezeigt, daher bin ich mir nicht sicher, ob sie funktioniert haben oder nicht. Ist es möglich, dass alle Befehle eine Rückmeldung erhalten, ob sie korrekt ausgeführt wurden oder nicht? Oder als absolutes Minimum, um die Feedback-ID anzuzeigen, die sie ausgeführt haben (korrekt oder nicht)
Akzeptierte Antwort:
(Ich denke, da Sie innerhalb von Ask Ubuntu posten wir können davon ausgehen, dass Sie über die Standard-Shell sprechen, also Bash.)
Es gibt eine sehr gute Antwort in der Stack Overflow-Frage In einem Shell-Skript:Echo-Shell-Befehle, während sie ausgeführt werden (Dies ist nicht nur eine Ubuntu-spezifische Lösung).
Was Sie tun müssen, ist das Set zu verwenden Befehl, um verbose oder xtrace einzuschalten.
set -o
erhalten Sie eine Liste, welche aktuellen Parameter auf an geschaltet sind oder aus .
set -v
oder die Langform-Version:
set -o verbose
wird ausführlich EIN .
Ich denke, was Sie wollen, ist eigentlich xtrace. Dies gibt nicht nur jeden ausgeführten Befehl wieder, sondern erweitert auch die Parameter und gibt Ihnen mehr Feedback. Wenn ich also etwas so Dummes mache, wie „hi“ am Terminal einzugeben, bekomme ich das Echo meiner Eingabe sowie einen Bericht/eine Ablaufverfolgung dessen, was die Shell getan hat, um zu versuchen, den Befehl „hi“ auszuführen (siehe Screenshot unten). ):
Xtrace aktivieren:
set -x
oder:
set -o xtrace
Um diese Parameter zu deaktivieren, rufen Sie (kontraintuitiv) dieselben Befehle auf, außer mit einem Pluszeichen + anstelle eines Bindestrichs oder Minuszeichens, also zum Beispiel:
set +v
wird verbose OFF , ähnlich:
set +x
schaltet xtrace AUS .
Eine detaillierte Anleitung zu Shell-Optionen finden Sie in Kapitel 33. Optionen, Erweiterter Bash-Scripting-Leitfaden .