Wie kann ich ein Shell-Skript (bash, falls das wichtig ist) ausführen/sourcen und die Ausgabe erhalten?enthaltendie Befehle im Skript? Ich möchte die Ausgabe in eine Datei umleiten, wie in
$ ./my_script > output.txt
und die output.txt
Datei soll die Befehle aus dem Skript enthalten, als hätte ich ihren Inhalt interaktiv in ein Terminal eingegeben und dann den Inhalt des Terminalfensters in eine Datei kopiert und eingefügt.
Bonuspunkte für Lösungen, bei denen sich die Befehle optisch von den Ausgabezeilen unterscheiden, wie in einem Terminal mit dem vorangestellten $
.
Antwort1
Fügen Sie in Ihrem Skript vor allen Befehlen die folgende Zeile hinzu (dadurch wird jeder Befehl vor der Ausführung in stderror geschrieben):
set -x
dann starten Sie Ihr Skript:
./my_script > output.txt 2>&1