Pipes in Bash
Dieses Tutorial erklärt, was Pipes sind und wie sie in Unix- und Linux-Umgebungen verwendet werden.
Pipes in Unix und Linux
Pipes in Unix- und Linux-Umgebungen übergeben die Standardausgabe eines Befehls als Standardeingabe an den anderen Befehl zur weiteren Verarbeitung. Pipes verwenden den Pipe-Operator, um die Ausgabe eines Befehls als Eingabe an den anderen Befehl zu übergeben. Der Pipe-Operator ist ein senkrechter Strich |
.
Bei der Verwendung von Pipes fließen die Daten von links nach rechts. Pipes helfen dabei, Daten nahtlos und kontinuierlich zwischen Befehlen zu übertragen, anstatt Textdateien zum Übergeben von Daten zu verwenden.
Für Pipes wird die folgende Syntax verwendet.
command1 | command2 | command3
Aus der obigen Syntax wird die Standardausgabe von command1
als Standardeingabe an command2
geleitet. command2
verarbeitet die Standardeingabe von command1
und leitet die Ausgabe zur weiteren Verarbeitung an command3
weiter.
Verwendung von Pipes in Bash
Die folgenden Beispiele demonstrieren die Verwendung von Pipes in Bash.
In der Abbildung unten listet der erste ls
-Befehl den gesamten Inhalt des test
-Ordners auf. Der zweite ls
-Befehl leitet die Standardausgabe an den head
-Befehl als Standardeingabe weiter.
Der Befehl head
hat die Option -2
; Dies weist den Befehl head
an, die ersten beiden Zeilen der Ausgabe des Befehls ls
anzuzeigen.
Der erste cat
-Befehl zeigt den Inhalt der Datei im Bild unten an, file1.txt
. Der zweite cat
-Befehl leitet die Standardausgabe an den grep
-Befehl weiter.
Der Befehl grep
vergleicht die Zeile mit dem Muster John
, und sobald die Zeile gefunden ist, wird die Ausgabe an den Befehl tee
weitergeleitet, der die Zeile in die Datei output.txt
schreibt. Der Befehl tee
leitet seine Standardausgabe auch an den Befehl wc
weiter.
Der Befehl wc
zählt die Anzahl der Wörter, Zeichen oder Zeilen in der Datei. Die Optionen von wc
wurden auf -mwl
gesetzt. Die Optionen -m
weisen den Befehl wc
an, die Anzahl der Zeichen in der Datei zu zählen und auf dem Bildschirm auszugeben.
Verwenden Sie die Option -w
, um Wörter in der Datei zu zählen, und die Option -l
wird verwendet, um die Anzahl der Zeilen in der Datei zu zählen, und die Zahlen werden über das Terminal auf der Standardausgabe ausgegeben.
Die Datei output.txt
hat 1
Zeile, 4
Wörter und 21
Zeichen.