Wenn Sie einen Terminalbefehl ausführen, wird die Ausgabe normalerweise im Terminal gedruckt, sodass Sie sie sofort lesen können. Manchmal möchten Sie die Ausgabe jedoch für eine spätere Analyse oder Kombination mit einem anderen Tool speichern.
Sie können dies mithilfe der Ausgabeumleitung in der Befehlszeile tun. Erfahren Sie, wie Sie unter Windows, Mac und Linux eine Befehlsausgabe an eine Textdatei senden.
Leiten Sie die Befehlszeilenausgabe in eine Datei um
Es gibt zwei Operatoren, mit denen Sie die Befehlsausgabe in eine Datei umleiten können: >> und > . Es ist wichtig, dass Sie den Unterschied zwischen diesen beiden Operatoren verstehen, um unbeabsichtigten Datenverlust zu vermeiden.
Das > -Symbol erstellt eine neue Datei oder überschreibt die alte Datei, falls diese bereits vorhanden ist. Der >>- Operator erstellt auch eine neue Datei, wenn diese nicht vorhanden ist, überschreibt jedoch nicht die vorhandene Datei. Wenn die Datei bereits vorhanden ist, wird der Text am Ende der Datei hinzugefügt.
Um die Ausgabe eines Befehls in eine Datei umzuleiten, geben Sie den Befehl ein, geben Sie dann den Operator > oder >> an und geben Sie schließlich den Pfad zu der Datei an, in die Sie die Ausgabe umleiten möchten. So können Sie beispielsweise die Ausgabe des Befehls ls speichern, der den Inhalt eines Verzeichnisses auflistet:
ls > /path/to/file
Ersetzen Sie /path/to/file durch den vollständigen Pfad zu der Datei, die Sie verwenden möchten. Der Befehl wird unbeaufsichtigt ausgeführt und die Ausgabe in der von Ihnen angegebenen Datei gespeichert.
Um den Inhalt einer Datei im Terminal anzuzeigen, können Sie den Befehl cat verwenden . Ersetzen Sie erneut /path/to/file durch den vollständigen Pfad zu der Datei, die Sie anzeigen möchten.
cat /path/to/file
Sie sollten die Ausgabe des Befehls in Ihrer neuen Datei sehen:
Leiten Sie die Ausgabe von ls in eine Datei um
Der > -Operator ersetzt den Inhalt einer vorhandenen Datei. Wenn Sie die Ergebnisse mehrerer Befehle in einer einzigen Datei speichern möchten, verwenden Sie stattdessen den Operator >> . Dadurch wird die Datei erweitert, sodass keine zuvor gespeicherten Ausgaben verloren gehen.
Versuchen Sie beispielsweise, Systeminformationen am Ende der gerade erstellten Datei hinzuzufügen. Führen Sie einfach uname -a unter Linux/Mac aus – oder den Befehl ver, wenn Sie unter Windows arbeiten – und fügen Sie den Operator >> zusammen mit dem Pfad zur Datei hinzu:
uname -a >> /path/to/file
Wiederholen Sie diesen Vorgang so oft wie nötig, um am Ende der Datei weitere Befehlsausgaben hinzuzufügen.
Hängen Sie die Ausgabe an eine Datei an
Exportieren Sie die Ausgabe auf den Bildschirm und leiten Sie sie in eine Datei um
Die Operatoren > und >> zeigen die Ausgabe des Befehls nicht auf dem Bildschirm an, sondern senden sie lediglich an eine Datei. Wenn Sie die Ausgabe an eine Datei senden und auf dem Bildschirm anzeigen möchten, verwenden Sie den Befehl tee.
Um den Befehl „tee“ zu verwenden, senden Sie die Ausgabe eines anderen Befehls mithilfe des Pipe-Operators, einem vertikalen Strich (|), an diesen Befehl. So können Sie beispielsweise die Ausgabe des ls-Befehls mithilfe einer Pipe an tee senden:
ls | tee /path/to/output.txt
Der Befehl tee sendet diese Ausgabe dann sowohl an den Bildschirm als auch an die von Ihnen angegebene Datei. Dieser Vorgang überschreibt die Datei oder erstellt eine neue Datei, wenn sie nicht existiert, genau wie der > -Operator .
Um das Ergebnis mit dem Befehl „tee“ auf dem Bildschirm auszugeben und an das Ende der Datei anzuhängen, fügen Sie das Flag „ -a“ vor dem Dateipfad hinzu, zum Beispiel:
uname -a | tee -a /path/to/output.txt
Sie sehen die Befehlsausgabe auf dem Bildschirm und können mit cat überprüfen, ob tee sie auch zur Datei hinzugefügt hat:
Hängen Sie die Ausgabe mit dem Befehl tee an eine Datei an