GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Bash-Scripting:So schreiben Sie Daten in Textdateien

Die Arbeit mit Shell-Skripten war schon immer interessant für Programmierer und Systemadministratoren, da die Ausgabe beiden beim Debuggen und Überwachen hilft. Die Konfiguration der meisten Linux-Distributionen basiert weitgehend auf Dateien, daher ist es wichtig, das Konzept des Schreibens von Daten in eine Textdatei mithilfe eines Skripts oder des Umleitens der Ausgabe an der Befehlszeile zu verstehen.

Linux verwendet drei Hauptdatenströme bei der Kommunikation mit dem Benutzer und dem Computer:

  1. stdin (STANDARDEINGABE)
  2. stdout (STANDARDAUSGABE)
  3. stderr (STANDARDFEHLER)

1. stdin

Dies ist der Datenstrom für die Eingabe von Informationen. Jede Eingabe von einem beliebigen Gerät wie einer Tastatur oder einer Maus fällt unter den Standard-Eingabedatenstrom. stdin wird durch 0 dargestellt Stream-ID.

[Sie könnten auch gerne lesen: Fünf Möglichkeiten, Weiterleitungsoperatoren in Bash zu verwenden]

2. stdout

Dies ist der Datenstrom für die Ausgabe von Daten. Die Ausgabe von Geräten (wie Monitor, Lautsprecher usw.) fällt unter den Standardausgabedatenstrom. stdout wird durch 1 dargestellt Stream-ID.

3. stderr

Der Standardfehler wird verwendet, um alle Fehler zu behandeln, die von den Befehlen erzeugt werden. Jeder Gerätestream (wie Monitor, Lautsprecher usw.), der den Benutzer warnt, dass etwas schief gelaufen ist, kommt unter stderr. stderr wird durch 2 dargestellt Stream-ID.

Wie schreibt man Daten in eine Datei?

Verwenden Sie Umleitungsoperatoren, um die Daten aus den stdout- und stderr-Streams abzurufen und sie in eine Textdatei umzuleiten.

Weiterleitung :Umleitung ist eine Linux-Funktion, die verwendet wird, um Eingabe-/Ausgabegeräte zu ändern, während ein Befehl ausgeführt wird.

Ausgabe-/Fehlerumleitung

Um Daten aus einem Bash-Skript in eine Textdatei zu schreiben, verwenden Sie die Ausgabe-/Fehlerumleitung mit > und >>  Umleitungsoperatoren.

> Überschreibt Daten in einer Textdatei.

>> Hängt Daten an eine Textdatei an.

Ein einfaches Skript erstellen und die Weiterleitung verstehen

date >> test1.txt
who >> test1.txt

date > test2.txt
who > test2.txt

Hier wird die Ausgabe beider Befehle an test1.txt angehängt während test2.txt enthält nur die Ausgabe von who Befehl.

Weiterarbeiten mit Weiterleitung

Das obige Skript leitet nur die Ausgabe um und schlägt im Fehlerfall fehl. Um mit der Umleitung für Ausgabe, Fehler oder beides zu arbeiten, müssen Sie die zusätzlichen Parameter angeben.

Zum Umleiten der Ausgabe:> oder >> oder 1> oder 1>>

Für Umleitungsfehler:2> oder 2>>

Für die Umleitung beides:&> oder &>>

Umleitungsfehler

date --who 2>> test1.txt
who 2>> test1.txt

Um nur die Fehler umzuleiten, haben Sie den spezifischen Parameter für den Fehler angegeben. Die Ausgabedatei enthält nur die Ausgabe des ersten Befehls, da sie ein falsches Argument hat.

Andere Argumente können austauschbar verwendet werden, um eine andere Funktionalität zu erreichen.

Das Schreiben des Skripts für andere Befehle ist dasselbe wie das obige Skript und erfordert die oben angezeigten Operatoren.

[ Jetzt herunterladen:Eine Anleitung für Systemadministratoren zum Bash-Skripting. ] 

Abschluss

Das Umleiten von Daten nach stdout oder stderr ist sowohl für Entwickler als auch für Systemadministratoren sehr nützlich. Das Verständnis dieser Tools und ihrer Ergebnisse wird Ihnen helfen, neue Dateien zu erstellen, Fehler zu beheben und Systeminformationen zu sammeln.


Linux
  1. Wie schreibe ich eine Schleife in Bash?

  2. So verwenden Sie den Grep-Befehl, um Text in Dateien zu finden

  3. So verbinden Sie zwei Textdateien unter Linux

  4. So schreiben Sie mit dem Linux-Befehl Text auf ein Bild

  5. So konvertieren Sie Textdateien in Groß- oder Kleinbuchstaben

Wie man Textdateien unter Linux vergleicht und zusammenführt

Wie man Textdateien unter Linux vergleicht und zusammenführt (Teil 2)

So verwenden Sie den Datumsbefehl in Bash-Skripten unter Linux

Bash-Scripting:So lesen Sie Daten aus Textdateien

Shell-Scripting für Anfänger – So schreiben Sie Bash-Scripts unter Linux

Bash-Skripting:So geben Sie Text in der Linux-Shell aus und formatieren ihn