Linux Pipe -Befehl mit Beispielen

Linux Pipe -Befehl mit Beispielen
Der Befehl "Pipe" wird sowohl in UNIX- als auch in Linux -Betriebssystemen verwendet. Rohre helfen dabei. Im Linux -Betriebssystem verwenden wir mehr als ein Rohr im Befehl, damit die Ausgabe eines Befehls vor einem Rohr als Eingang für den anderen Befehl nach der Pipe fungiert. In diesem Artikel haben wir viele Beispiele erörtert, um die grundlegende Funktionalität von Rohren zu verstehen.

Voraussetzungen

Um Rohrbefehle unter Linux anzuwenden, müssen Sie eine Linux -Umgebung in Ihrem System haben. Dies kann durch das Herunterladen eines virtuellen Feldes und das Konfigurieren einer Ubuntu -Datei durchgeführt werden. Benutzer müssen Berechtigungen haben, um auf die erforderlichen Anwendungen zuzugreifen.

Syntax

Befehl 1 | Befehl 2 | Befehl 3 |…

Sortieren Sie die Liste mit Rohren

Das Rohr verfügt über viele Funktionen, die zum Filtern, Sortieren und Anzeigen des Textes in der Liste verwendet werden. Eines der häufigsten Beispiele wird hier beschrieben. Angenommen, wir haben eine Datei namens Datei1.Txt hat die Namen der Schüler. Wir haben den CAT -Befehl verwendet, um den Datensatz dieser Datei abzurufen.

$ Cat file1.txt

Die in dieser Datei vorhandenen Daten sind nicht ordnungsgemäß. Um die Daten zu sortieren, müssen wir hier einem Code befolgen.

$ Cat file1.txt | Sortieren

Durch die jeweilige Ausgabe können Sie feststellen, dass die Namen der Schüler alphabetisch in einer Sequenz von a bis z angeordnet sind.

Daneben. Angenommen, wir möchten eine Ausgabe in sortierter Form und Entfernen von Redundanz erhalten. Wir werden denselben Befehl und ein Schlüsselwort "Uniq" zusätzlich zum Standardbefehl verwenden. Betrachten wir eine Datei namens Datei2.Txt hat die Namen der Themen darin. Der gleiche Befehl wird zum Abrufen von Daten verwendet.

$ Cat file2.txt

Jetzt werden wir den Befehl verwenden, um alle Wörter zu entfernen, die in der Datei dupliziert werden.

$ Cat file2.txt | sortieren | Uniq

Die Ausgabe zeigt, dass die Elemente alphabetisch organisiert und angeordnet sind. Gleichzeitig werden alle Wörter, die dupliziert wurden. In dem obigen Befehl wird nur die Ausgabe angezeigt, aber wir werden den folgenden Befehl verwenden, um sie zu speichern.

$ cat file2.txt | sortieren | UNIQ> LIST4.txt

Die Ausgabe wird in einer anderen Datei mit derselben Erweiterung gespeichert.

Dateidaten eines entsprechenden Bereichs anzeigen

Es ist sehr ärgerlich, wenn Sie von Anfang an einige Daten erhalten möchten, aber der Befehl gibt Ihnen alle passenden Elemente in Ihrem System. Sie können das Schlüsselwort "Kopf" verwenden. Es hilft, Ihre Ausgabe mit einem Bereich zu begrenzen. ich.e., In diesem Beispiel haben wir den Bereich bis zu 4 deklariert. Die Daten stammen also aus den ersten 4 Zeilen der Datei. Betrachten Sie dieselbe Dateidatei2.TXT, wie wir oben ein Beispiel genommen haben.

$ Cat file2.txt | Kopf -4

Ähnlich wie beim Kopf können wir auch die Schwanzoption verwenden. Dadurch wird die Ausgabe auf die letzten Zeilen gemäß dem angegebenen Bereich einschränken.

Pfeife und mehr Befehl

Durch mehr Befehl wird der gesamte Ausgang gleichzeitig auf dem Bildschirm angezeigt. Das Rohr wirkt als Container und zeigt alle Ausgangsdaten als Eingabe von LS-L an. Weil die Ausgabe eine lange Liste von Dateien ist.

$ ls -al | mehr

LS wird verwendet, um alle möglichen Daten des jeweiligen Befehls anzuzeigen. Es wird zunächst die Gesamtzahl der Daten zur entsprechenden Abfrage angezeigt.

Zählen Sie die Anzahl der Dateien

Es ist üblich, die Anzahl der derzeit vorhandenen Dateien zu kennen. Und es ist nicht erforderlich, den Befehl Grep oder Cat zu verwenden, um Daten aller Typen zu holen. Wir können in diesem Fall auch Pipe verwenden. Der verwendete Befehl ist geschrieben als:

$ ls | WC -l

Während WC "Wortzahl" verwendet wird, um die vorhandenen Dateien zu zählen.

Prozessidentifizierung

Viele komplizierte Aufgaben werden auch mit der Rohr in unseren Befehlen ausgeführt. Der Befehl, über den wir jetzt diskutieren.

$ ps -f | Grep systemd | awk 'print $ 2'

Das $ 2 $ 2 von awk zeigt die Daten von $ 2 an, die die zweite Spalte ist.

Holen Sie sich Subdirektorien mit Rohr

Eine der Pipeline -Befehle, mit denen wir alle vorliegenden Unterverzeichnisse im aktuellen Verzeichnis erhalten haben. Wir haben den Grep -Befehl hier verwendet. Grep funktioniert nur, um die Daten aus dem 'D' anzuzeigen. Die Pfeife hilft beim Abrufen der jeweiligen Daten aller Verzeichnisse. '^d' wird hier verwendet.

$ ls -al | grep '^d'

Holen Sie Dateien mit Pipe

Um die Dateien aus dem System der jeweiligen Erweiterungen zu erhalten, können wir dies erhalten, indem wir das Rohr in unseren Befehlen verwenden. Das erste Beispiel ist das Finden der Java -Dateien im System. 'Locate' und 'Grep' helfen dabei, die Dateien der jeweiligen Erweiterungen zu erhalten.

$ lokalisieren “*.Java ”| Grep Java

'*' wird verwendet, um alle Dateien im System zu holen. Derzeit haben wir eine einzige Datei in unserem System vorhanden. Das zweite Beispiel besteht darin, die Dateien mit der Erweiterung des Textes zu erhalten. Der gesamte Befehl ist derselbe, nur dass die Dateierweiterung geändert wird.

Verwenden Sie mehrere Rohre in einem einzigen Befehl

In diesem Beispiel haben wir im Gegensatz zu den früheren mehr als eine Pipe in einem einzigen Befehl verwendet, um seine Funktionalität auszuarbeiten. Betrachten Sie eine Datei mit dem Namen Datei3.txt.

Jetzt möchten wir den Aufzeichnung des Wortes erhalten, das mit dem im Befehl angegebenen Namen übereinstimmt. Hier wird der CAT -Befehl verwendet, um die Daten aus einer bestimmten Datei abzurufen. Grep wird verwendet, um dieses spezifische Wort aus der Datei auszuwählen. 'Tee' wird verwendet, um das Ergebnis in einer anderen Datei zu speichern. Und WC soll die resultierenden Daten zählen. Das Ergebnis ist also unten gezeigt.

$ Cat file3.txt | Grep "Yasin" | Teedatei4.txt | WC -l

Das Wort ist mit dem 2 Inhalt abgestimmt. Wir können die Daten aus der neuen Beispieldatei anzeigen, um das gesamte Ergebnis anzuzeigen, bei dem das Ergebnis gespeichert wird.

Abrufen bestimmte Daten mit Rohren ab

In diesem Beispiel möchten wir die Daten aus der Datei mit 'h' in ihren Inhalten erhalten.

$ Cat file3.txt | grep h

Das Ergebnis zeigt, dass die abgerufenen Daten der Suche nach dem Befehl 'H' entsprechen. Bewegen Sie sich auf das folgende Beispiel. Hier möchten wir die Elemente der Datei mit dem Instrument abholen, aber wir haben eine Bedingung der Fallempfindlichkeit angewendet. Sowohl Alphabete des oberen als auch des unteren Gehäuses werden abgerufen.

$ Cat file2.txt | grep -i s

Das Ergebnis ist im Bild gezeigt. Als nächstes zeigen wir die Namen der Schüler mit Alphabeten 'a' und 't' kombiniert im Wort. Das Ergebnis liegt im folgenden Bild.

$ cat file1.txt | grep "a \+t"

Abschluss

Der Artikel zeigt die Vielseitigkeit von Pipe in Linux -Befehlen. Es ist jedoch recht einfach, funktioniert aber auf eine Weise, um viele komplexe Abfragen zu lösen. Dieser Befehlszeilen-Dienstprogramm ist leicht implementierbar und kompatibel mit UNIX- und Linux-Betriebssystemen.