So fügen Sie eine Datei in der Bash-Shell-Befehlszeile an
Die Bash-Shell ist die beliebteste Shell auf Linux-Systemen, und um die Shell effizient zu nutzen, benötigen Sie ein wenig Wissen über Bash-Shell-Umleitungen. Dies ist auch ein wesentlicher Schritt beim Erlernen von Bash-Skripten.
In dieser Anleitung zeigen wir, wie Sie Text oder Befehlsausgabe an eine Datei in der Bash-Shell-Befehlszeile anhängen. Dazu gehören mehrere Beispiele, damit Sie in jedem Szenario die richtige Methode auswählen können.
In diesem Tutorial lernen Sie:
- So fügen Sie Text oder Befehlsausgabe an eine Datei an
- So fügen Sie die Befehlsausgabe gleichzeitig an und zeigen sie an
- So hängen Sie mehrere Textzeilen an eine Datei an
Anfügen von Text an eine Datei in Bash unter Linux
So fügen Sie eine Datei in Bash an
Um eine neue Datei in Bash zu erstellen, verwenden Sie normalerweise > für die Umleitung, aber zum Anfügen an eine vorhandene Datei verwenden Sie >>. Werfen Sie einen Blick auf die folgenden Beispiele, um zu sehen, wie es funktioniert.
Um Text an das Ende einer Datei anzufügen, können Sie
echoverwenden und die Ausgabe umleiten, um an eine Datei angehängt zu werden. Wenn die von uns angegebene Datei noch nicht vorhanden ist, wird sie für uns erstellt.echo "Linux is great" >> file.txtSie können die Befehlsausgabe auch in eine Datei umleiten. In diesem Beispiel hängen wir das aktuelle Datum an eine Datei an.
date >> file.txtSo sieht unsere Datei bisher aus.
cat file.txt Linux is great Fri 09 Apr 2021 12:11:12 PM EDTMöglicherweise stellen Sie fest, dass beim Umleiten
der Ausgabedes Datumsbefehls nichts in unserem Terminal angezeigt wird. Das liegt daran, dass die Ausgabe an die Datei und nicht an unser Terminal gerichtet wurde. Wir würden jedoch Fehler sehen, wenn welche aufgetreten wären. Um die Befehlsausgabe bei gleichzeitiger Umleitung zu einer Datei anzuzeigen, können Sie die Pipeline anteeweiterleiten. Beachten Sie, dass wir auch die Option-amit tee verwenden müssen.uptime | tee -a file.txt 12:16:46 up 7 min, 1 user, load average: 0.06, 0.64, 0.48Und jetzt sieht unsere Datei so aus.
cat file.txt Linux is great Fri 09 Apr 2021 12:11:12 PM EDT 12:16:46 up 7 min, 1 user, load average: 0.06, 0.64, 0.48Wenn Sie mehrere Zeilen an eine Datei anhängen möchten, können Sie
echo -everwenden und jede Zeile durch ein\n(Zeilenumbruchzeichen) trennen. So würde es aussehen.echo -e "Bash is my favorite shell. \nZ shell is alright too." >> file.txtUnd die Ergebnisse...
cat file.txt ... Bash is my favorite shell. Z shell is alright too.Eine weitere Möglichkeit, mehrere Zeilen an eine Datei anzuhängen, ist die Verwendung der Heredoc-Funktionalität von Bash. Auf diese Weise können Sie mehrere Zeilen in eine Datei übergeben. Sie müssen am Anfang Ihres Befehls ein "Trennzeichen" angeben, das normalerweise nur
EOF(Ende der Datei) ist, aber technisch gesehen alles sein kann. So würde es aussehen, wenn wir drei Zeilen an eine Datei anhängen würden.cat << EOF >> file.txt My user account is: $(whoami) My home directory is: $HOME Pretty cool, huh? EOFUnd die Ergebnisse...
cat file.txt ... My user account is: linuxconfig My home directory is: /home/linuxconfig Pretty cool, huh?
Das sollten all die verschiedenen Syntaxen sein, die Sie kennen müssen, um Text oder Befehlsausgabe an eine Datei in Bash anzuhängen. Wenn wir uns unsere Datei ansehen, können Sie sehen, dass alle unsere Beispiele an die Datei angehängt wurden, mit der wir gearbeitet haben. Somit liefern alle diese Methoden das gleiche Ergebnis, aber einige sind in bestimmten Szenarien bequemer.
Alle unsere Beispielbefehle wurden an dieselbe Datei angehängt
Abschließende Gedanken
In dieser Anleitung haben wir gesehen, wie man an eine Datei in der Bash-Shell anhängt. Dazu gehörten die standardmäßige >> Umleitung sowie die Verwendung des T-Stück-Befehls und der Heredoc-Funktion. Sie sind jetzt ein Experte im Anhängen an eine Datei in Bash und sind der vollständigen Beherrschung der Shell viel näher gekommen.

