Pipe-, Grep- und Sort-Befehl unter Linux/Unix mit Beispielen
Was ist eine Pipe unter Linux?
Die Pipe ist ein Befehl in Linux, mit dem Sie zwei oder mehr Befehle verwenden können, sodass die Ausgabe eines Befehls als Eingabe für den nächsten dient. Kurz gesagt, die Ausgabe jedes Prozesses direkt als Eingabe für den nächsten wie eine Pipeline. Das Zeichen '|' bezeichnet ein Rohr.
Pipes helfen Ihnen, zwei oder mehr Befehle gleichzeitig zu kombinieren und nacheinander auszuführen. Sie können leistungsstarke Befehle verwenden, die komplexe Aufgaben im Handumdrehen ausführen können.
Lassen Sie uns dies anhand eines Beispiels verstehen.
Wenn Sie den Befehl „cat“ verwenden, um eine Datei anzuzeigen, die sich über mehrere Seiten erstreckt, springt die Eingabeaufforderung schnell zur letzten Seite der Datei und Sie sehen den Inhalt in der Mitte nicht.
Um dies zu vermeiden, können Sie die Ausgabe des Befehls „cat“ an „less“ weiterleiten, wodurch Ihnen jeweils nur eine Bildlauflänge des Inhalts angezeigt wird.
cat filename | less
Eine Illustration würde es verdeutlichen.
Klicke hier wenn das Video nicht zugänglich ist
'pg' und 'more' Befehle
Anstelle von „less“ können Sie auch verwenden.
cat Filename | pg
or
cat Filename | more
Und Sie können die Datei in verständlichen Teilen anzeigen und nach unten scrollen, indem Sie einfach die Eingabetaste drücken.
Der Befehl „grep“.
Angenommen, Sie möchten eine bestimmte Information der Postleitzahl aus einer Textdatei suchen.
Sie können den Inhalt selbst manuell überfliegen, um die Informationen zu verfolgen. Eine bessere Option ist die Verwendung des grep-Befehls. Es scannt das Dokument nach den gewünschten Informationen und präsentiert das Ergebnis in einem gewünschten Format.
Syntax:
grep search_string
Sehen wir es uns in Aktion an –
Hier grep Der Befehl hat die Datei 'sample' nach den Zeichenfolgen 'Apple' und 'Eat' durchsucht.
Mit diesem Befehl können folgende Optionen verwendet werden.
Option | Funktion |
---|---|
-v | Zeigt alle Zeilen an, die nicht mit der gesuchten Zeichenfolge übereinstimmen |
-c | Zeigt nur die Anzahl der übereinstimmenden Zeilen an |
-n | Zeigt die übereinstimmende Zeile und ihre Nummer an |
-i | Passen Sie beide (Groß- und Kleinbuchstaben) an |
-l | Zeigt nur den Namen der Datei mit der Zeichenfolge an |
Lassen Sie uns die erste Option ausprobieren '-ich' auf der gleichen Datei verwenden Sie oben –
Mit der Option „i“ hat grep die Zeichenfolge „a“ (ohne Berücksichtigung der Groß- und Kleinschreibung) aus allen Zeilen gefiltert.
Der Befehl „Sortieren“.
Dieser Befehl hilft dabei Den Inhalt einer Datei alphabetisch sortieren.
Die Syntax für diesen Befehl lautet:
sort Filename
Betrachten Sie den Inhalt einer Datei.
Verwenden des Sortierbefehls
Es gibt Erweiterungen auf diesen Befehl anwenden, und sie sind unten aufgeführt.
Option | Funktion |
---|---|
-r | RevSortierung |
-n | Sortiert numerisch |
-f | Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung |
Das folgende Beispiel zeigt die umgekehrte Sortierung des Inhalts in der Datei „abc“.
Was ist ein Filter?
Linux verfügt über viele Filterbefehle wie awk, grep, sed, Spell und WC. Ein Filter nimmt Eingaben von einem Befehl entgegen, führt einige Verarbeitungsvorgänge durch und gibt eine Ausgabe aus.
Wenn Sie zwei Befehle weiterleiten, wird die „gefilterte“ Ausgabe des ersten Befehls an den nächsten übergeben.
Lassen Sie uns dies anhand eines Beispiels verstehen.
Wir haben die folgende Datei 'Beispiel'
Wir wollen hervorheben nur die Zeilen, die das Zeichen „a“ nicht enthalten, das Ergebnis sollte jedoch in umgekehrter Reihenfolge vorliegen.
Hierzu kann folgende Syntax verwendet werden.
cat sample | grep -v a | sort - r
Schauen wir uns das Ergebnis an.
Zusammenfassung:
- Rohre '|' Senden Sie die Ausgabe eines Befehls als Eingabe eines anderen Befehls.
- Der Filter nimmt Eingaben von einem Befehl entgegen, führt einige Verarbeitungsvorgänge durch und gibt eine Ausgabe aus.
- Mit dem Befehl grep können Sie Zeichenfolgen und Werte in einem Textdokument finden
- Das Weiterleiten durch grep dürfte eine der häufigsten Anwendungen sein
- Der Befehl „sort“ sortiert den Inhalt einer Datei alphabetisch
- Die Befehle „less“, „pg“ und „more“ werden verwendet, um eine lange Datei in lesbare Teile aufzuteilen.