Die Linux-Shell verfügt über mehrere Operatoren, um die Ausgabe von Befehlen in eine Datei umzuleiten oder zu leiten. In dieser Anleitung zeige ich Ihnen verschiedene Möglichkeiten, die Echoausgabe in eine Datei umzuleiten. Wir werden den Inhalt einer Datei durch die Echo-Ausgabe ersetzen, dann werden wir Text mit Echo an eine vorhandene Datei anhängen und schließlich werden wir Text per SSH in eine Datei auf einem Remote-System echoen. Alle hier gezeigten Beispiele funktionieren auf jeder Linux-Distribution wie Ubuntu, Debian, Linux Mint, Rocky Linux usw.
Echo in Datei
Die „> ”-Operator wird verwendet, um den Inhalt einer Datei durch den Text zu ersetzen, der vom echo-Befehl zurückgegeben wird.
Syntax:
echo "some text here" > /path/to/file
Beispiel:
$ echo "Greetings from Vitux.com" > /tmp/test.txt
Der Befehl zeigt kein Ergebnis auf der Shell, die gesamte Ausgabe wird in der Datei gespeichert. Überprüfen Sie nun den Inhalt unserer Datei /tmp/test.txt. Ich verwende den cat-Befehl:
cat /tmp/test.txt
Fügen Sie mit Echo weitere Inhalte zur Datei hinzu
Im zweiten Beispiel füge ich Inhalt zu unserer Datei /tmp/test.txt hinzu, ohne den Inhalt zu ersetzen. Der Inhalt wird an das Ende der Datei angehängt. Der zum Anhängen von Inhalten verwendete Operator ist „>> “.
Syntax:
echo "Some text to be appended" >> /path/to/file
Beispiel:
echo "More text from Vitux here" >> /tmp/test.txt
Der obige Befehl fügt den Text „Mehr Text von Vitux hier“ an die Datei /tmp/test.txt an. Die Datei test.txt enthält bereits den Text „Greetings from Vitux.com“ aus unserem ersten Beispiel. Lassen Sie uns nun sehen, was in der Datei enthalten ist. Ich verwende erneut den cat-Befehl, um den Dateiinhalt auf der Shell anzuzeigen
cat /tmp/test.txt
Echo in Datei auf Remote-System
Manchmal möchten Sie vielleicht Text in eine Datei schreiben, die sich auf einem anderen Linux-System befindet. Solange beide Systeme über ein LAN oder das Internet verbunden sind, können Sie dazu SSH verwenden. Der ssh-Befehl hat den Befehlszeilenschalter -f, um Befehle direkt per ssh zu übergeben und dann in den Hintergrund zu gehen, wo Sie (falls erforderlich) ein Passwort eingeben können.
Beispiel:
ssh [email protected] -f 'echo "Text added via SSH" >> /tmp/test.txt'
Wobei „Benutzer“ der Benutzername ist, mit dem Sie sich beim Remote-Server oder -Desktop anmelden möchten. Ersetzen Sie das Wort „remotesystem“ durch den Hostnamen oder die IP-Adresse des Remote-Computers.
Ich habe den Befehl auf einem Remote-System ausgeführt, um unserer test.txt-Datei Text hinzuzufügen. Das Ergebnis ist:
Jetzt haben Sie gelernt, wie Sie Text in eine Datei auf dem lokalen System echoen und wie Sie dies auch auf einem entfernten System über SSH tun.