So speichern Sie die Befehlszeilenausgabe in eine Datei unter Windows, Mac und Linux

Das Speichern der Ausgabe eines Befehls in einer Datei ist hilfreich, wenn Sie versuchen, ein Problem zu diagnostizieren, und das ist sehr einfach.

Das Speichern der Ausgabe eines Befehls in einer Datei ist hilfreich, wenn Sie versuchen, ein Problem zu diagnostizieren, und das ist sehr einfach.
Werbung

Wenn Sie einen Befehl in einem Terminalfenster ausführen, wird die Ausgabe des Befehls normalerweise im Terminal oder auf dem Bildschirm ausgegeben, sodass Sie sie sofort lesen können. Sie können die Ausgabe eines Befehls auch in eine Datei drucken, wenn Sie sie speichern möchten.

Das Speichern der Ausgabe eines Befehls in einer Datei ist hilfreich, wenn Sie versuchen, ein Problem zu diagnostizieren. Um Hilfe vom technischen Support zu erhalten, müssen Sie möglicherweise bestimmte Befehle auf Ihrem Computer ausführen und die Ergebnisse an das Support-Team senden. Dies ist einfach mit der Ausgabeumleitung in der Befehlszeile.

Heute werden wir behandeln, wie die Ausgabe eines Befehls an eine Textdatei in der Bash-Shell unter Windows, Mac und Linux gesendet wird.

Hinweis: Wir werden das Mac-Terminal verwenden Diese 6 tollen Terminal-Befehle werden Ihr MacBook ankurbeln Diese 6 tollen Terminal-Befehle werden Ihr MacBook ankurbeln Sie können nur so viel in die grafische Benutzeroberfläche stopfen, bevor es unübersichtlich wird, also sollte es als nicht groß kommen Überraschung, dass Sie mit dem Mac-Terminal einige wirklich coole Sachen machen können. Lesen Sie mehr in unserem Beispiel, aber es funktioniert genauso in der Bash-Shell unter Linux 40+ Die meisten verwendeten Linux-Terminalbefehle 40+ Die meisten verwendeten Linux-Terminalbefehle Ob Sie gerade erst anfangen oder einfach nur neugierig auf das Linux-Terminal sind, hier sind die Die gebräuchlichsten Befehle, die Sie während Ihrer gesamten Zeit auf Linux führen. Lesen Sie mehr und in der neuen Bash-Shell in Windows 10 Eine Kurzanleitung zu Linux Bash Shell in Windows 10 Eine Kurzanleitung zu Linux Bash Shell in Windows 10 Sie können jetzt Linux unter Windows ausführen. Erfahren Sie mehr über Bash unter Windows, wie und warum Sie es installieren sollten, bis hin zu verborgenen Funktionen, von denen Sie wahrscheinlich noch nichts wussten. Weiterlesen .

Ausgabe nur an eine Datei umleiten

Es gibt zwei Operatoren zum Umleiten der Ausgabe eines Befehls in eine Datei anstelle des Bildschirms.

Das Symbol > erstellt eine neue Datei, wenn sie nicht vorhanden ist, oder überschreibt die Datei, falls sie bereits existiert. Das >> erstellt auch eine neue Datei, wenn sie nicht vorhanden ist, aber fügt den Text an das Ende der Datei an, falls sie bereits existiert, anstatt die Datei zu überschreiben.

Hinweis an mich selbst: Wenn Sie eine Shell-Skript-Ausgabe in eine Datei umleiten, wird sie nicht auf der Konsole angezeigt :-) #StupidMe

- Xavier Mertens? (@xme) 5. August 2017

Um die Ausgabe eines Befehls in eine Datei umzuleiten, geben Sie den Befehl ein, geben Sie den Operator > oder den Operator >> an und geben Sie den Pfad zu einer Datei an, an die die Ausgabe umgeleitet werden soll. Der Befehl ls listet beispielsweise die Dateien und Ordner im aktuellen Verzeichnis auf. Wenn Sie den folgenden Befehl ausführen, wird die Liste der Dateien und Ordner in die Datei ls_output.txt im Ordner TerminalOutput geschrieben .

Ersetzen Sie / path / to / file mit dem vollständigen Pfad zu der Datei, die Sie verwenden möchten.

ls>/path/to/file 

Dies ist der Befehl für unser Beispiel.

 ls>/Users/lorikaufman/TerminalOutput/ls_output.txt 

Um den Inhalt der Datei im Terminal-Fenster anzuzeigen, verwenden Sie den Befehl cat wie im folgenden Befehl gezeigt. Erneut ersetzen Sie / path / to / file mit dem vollständigen Pfad der Datei, die Sie anzeigen möchten.

 cat /path/to/file 

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Der Operator > ersetzt den Inhalt einer vorhandenen Datei jedes Mal, wenn Sie ihn zum Umleiten der Ausgabe verwenden. Wenn Sie die Ausgabe mehrerer Befehle in einer einzigen Datei speichern möchten, verwenden Sie stattdessen den Operator >> . Dies hängt die Ausgabe eines Befehls an das Ende der angegebenen Datei an, falls sie bereits existiert. Wenn die Datei nicht existiert, erstellt sie eine neue Datei.

Zum Beispiel fügen wir Systeminformationen an das Ende der Datei an, die wir oben erstellt haben. In der folgenden Zeile lautet uname -a also der Befehl, gefolgt vom >> Umleitungsoperator. Dann der vollständige Pfad zu der Datei, an die die Ausgabe des Befehls uname angehängt werden soll .

Der Parameter -a im Befehl uname gibt alle verfügbaren Systeminformationen aus.

 uname -a>>/Users/lorikaufman/TerminalOutput/ls_output.txt 

Um die Datei mit den angehängten Informationen im Terminalfenster anzuzeigen, geben Sie den folgenden Befehl mit dem vollständigen Pfad zu Ihrer Datei ein.

 cat /Users/lorikaufman/TerminalOutput/ls_output.txt 

Wiederholen Sie diesen Vorgang so oft, bis Sie die Befehlsausgabe an das Ende der Datei angehängt haben.

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Hier ein weiteres Beispiel für das Senden der Ausgabe des Befehls ls als Verzeichnisstruktur mit rekursiv aufgeführten Unterverzeichnissen (Parameter R ) und einer Datei pro Zeile (Parameter 1 ).

 ls -1R>/Users/lorikaufman/TerminalOutput/dir_tree.txt 

Dann verwenden wir den Befehl cat, wie bereits erwähnt, um den Inhalt der Datei im Terminal-Fenster anzuzeigen.

 cat /Users/lorikaufman/TerminalOutput/dir_tree.txt 

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Ausgabe auf Bildschirm drucken und in eine Datei umleiten

Die Operatoren > und >> zeigen nicht die Ausgabe eines Befehls auf dem Bildschirm an. Die Ausgabe wird nur an eine Datei gesendet.

Wenn Sie die Ausgabe an eine Datei senden und auf dem Bildschirm anzeigen möchten, verwenden Sie den Befehl tee anstelle der Operatoren > und >> .

Nerd Alarm! Heute habe ich den Befehl `tee` entdeckt, der sowohl zu einer Datei als auch zu einer Standardausgabe führt. Unix erfreut sich weiterhin. pic.twitter.com/aClIT8AdJB

- Zeke Sikelianos (@zeke) 29. August 2017

Um den Befehl tee zu verwenden, müssen Sie die Ausgabe des ausgeführten Befehls wie ls an den Befehl tee übergeben, indem Sie den senkrechten Strich ( | ) verwenden. Der folgende Befehl übernimmt beispielsweise die Ausgabe des Befehls ls und leitet sie an den Befehl tee weiter . Der Befehl tee sendet diese Ausgabe dann an den Bildschirm und an eine Datei, die Sie unter Verwendung des vollständigen Pfads zur Datei angeben.

 ls | tee /Users/lorikaufman/TerminalOutput/ls_output.txt 

Der obige Befehl ersetzt den gesamten Inhalt der Datei oder erstellt einen neuen, wenn er nicht existiert, genau wie der Operator > . Wir haben den folgenden Befehl cat verwendet, um den Inhalt unserer Datei im Terminalfenster anzuzeigen.

 cat /Users/lorikaufman/TerminalOutput/ls_output.txt 

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Um den Befehl tee zu verwenden, um die Ausgabe auf den Bildschirm zu drucken und sie an das Ende einer Datei anzuhängen, geben Sie den folgenden Befehl ein. Hier fügen wir die vollständigen Systeminformationen am Ende der Datei mit dem Befehl uname -a hinzu, genau wie wir es mit dem Operator >> getan haben, senden die Ausgabe aber auch an den Bildschirm.

 uname -a | tee -a /Users/lorikaufman/TerminalOutput/ls_output.txt 

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Der folgende Befehl ist die T- Version, bei der eine Verzeichnisstruktur rekursiv in eine Datei und auf den Bildschirm gedruckt wird, eine Datei in jeder Zeile, genau wie beim Operator > .

 ls -1R | tee /Users/lorikaufman/TerminalOutput/dir_tree.txt 

Dann verwenden wir den Befehl cat erneut, um den Inhalt der Datei anzuzeigen.

 cat /Users/lorikaufman/TerminalOutput/dir_tree.txt 

Speichern Sie die Befehlszeilenausgabe Windows Mac Linux

Aber Moment, es gibt mehr

Es gibt viele weitere Möglichkeiten, die Ausgabe einschließlich der Fehler in eine Datei umzuleiten. Sie können über die verschiedenen Operatoren und Befehle, die zum Umleiten der Ausgabe verwendet werden, im Kapitel "E / A-Umleitung" des Handbuchs "Erweiterte Bash-Skripterstellung" lesen. Sie können auch mehr über die Verwendung der Befehlszeile erfahren. Eine Kurzanleitung zur Einführung in die Linux-Befehlszeile Eine Kurzanleitung zur Einführung in die Linux-Befehlszeile Sie können mit Befehlen in Linux viele erstaunliche Dinge tun und es ist wirklich nicht schwer zu lernen . Weiterlesen .

Ich habe heute eine gute Lektion gelernt. Leiten Sie die Protokollausgabe einer 10-Millionen-Iteration für eine Schleife nicht in eine TXT-Datei um. Ergebnis: 5 GB TXT-Datei.

- Lloyd (@ lcarswell1) 21. Mai 2017

Wofür verwenden Sie die Ausgabeumleitung? Welche Methode verwendest du? Haben Sie andere Möglichkeiten kennen gelernt, die Ausgabe umzuleiten? Teilen Sie Ihre Gedanken und Erfahrungen mit uns in den Kommentaren unten.

In this article