Gibt es eine Möglichkeit, die gesamte Terminalausgabe mit einem Befehl in einer Datei zu speichern?
- Ich spreche nicht von Umleitung
command > file.txt
- Nicht die Historie
history > file.txt
, ich brauche den vollständigen Terminaltext - Nicht mit Hotkeys!
Etwas wie terminal_text > file.txt
Akzeptierte Antwort:
Sie können script
verwenden . Es wird im Grunde alles, was auf dem Terminal gedruckt wird, in diesem script
speichern Sitzung.
Von man script
:
script makes a typescript of everything printed on your terminal.
It is useful for students who need a hardcopy record of an
interactive session as proof of an assignment, as the typescript file
can be printed out later with lpr(1).
Sie können ein script
starten Sitzung, indem Sie einfach script
eingeben Im Terminal werden alle nachfolgenden Befehle und ihre Ausgaben in einer Datei namens typescript
gespeichert im aktuellen Verzeichnis. Sie können das Ergebnis auch in einer anderen Datei speichern, indem Sie einfach script
starten wie:
script output.txt
Zum Abmelden vom script
Session (speichern des Inhalts beenden), geben Sie einfach exit
ein .
Hier ist ein Beispiel:
$ script output.txt
Script started, file is output.txt
$ ls
output.txt testfile.txt foo.txt
$ exit
exit
Script done, file is output.txt
Wenn ich jetzt die Datei lese:
$ cat output.txt
Script started on Mon 20 Apr 2015 08:00:14 AM BDT
$ ls
output.txt testfile.txt foo.txt
$ exit
exit
Script done on Mon 20 Apr 2015 08:00:21 AM BDT
script
hat auch viele Optionen, z. ruhig ausgeführt -q
(--quiet
) ohne Programmnachrichten anzuzeigen/zu speichern, kann es auch einen bestimmten Befehl -c
ausführen (--command
) statt einer Sitzung, hat es auch viele andere Optionen. Überprüfen Sie man script
um mehr Ideen zu bekommen.