Von Rubaiat Hossain
Email

Der Befehl grep wird verwendet, um in einer Textdatei nach Zeichenfolgen zu suchen. Hier sind zehn Beispiele für grep, die Sie möglicherweise hilfreich finden.

Der Befehl grep bietet Zugriff auf das Dienstprogramm grep, ein leistungsstarkes Dateiverarbeitungswerkzeug zum Suchen von Mustern in Textdateien. Es hat viele praktische Anwendungsfälle und ist sicherlich einer der am häufigsten verwendeten Linux-Befehle. Dieses Handbuch zeigt einige einfache, aber nützliche Linux-Grep-Befehle, die in der Praxis verwendet werden.

Beispieldatei zur Demonstration

Wir haben eine Referenzdatei erstellt, damit die Leser grep besser verstehen können. Sie können eine Kopie dieser Datei erstellen, indem Sie den folgenden Shell-Befehl in Ihrem Terminal ausführen.

Katze <> Testdatei
Dies ist eine einfache Textdatei, die enthält
mehrere Zeichenfolgen sowie einige Telefonnummern
(555) 555-1234 (567) 666-2345
und E-Mail plus Webadressen
[email protected]
https://google.com
ftp://mywebserver.com
ENDE
instagram viewer

1. Suchen Sie Text in Dateien

Um in einer Datei nach Textmustern zu suchen, führen Sie einfach grep gefolgt vom Musternamen aus. Geben Sie außerdem den Namen der Datei an, die den Text enthält.

grep "email" Testdatei

Dieser Befehl zeigt die Zeile in unserem an Testdatei das enthält das Wort Email. Sie können denselben Text auch mit grep in mehreren Dateien durchsuchen.

grep "Beispiel" / usr / share / dict / amerikanisch-englisch / usr / share / dict / britisch-englisch

Der obige Befehl zeigt alle Instanzen des Wortes an Beispiel in dem amerikanisches Englisch und Britisches Englisch Wörterbuchdateien.

2. Finden Sie genaue Übereinstimmungswörter

Der im vorherigen Beispiel dargestellte Linux-Befehl grep listet auch Zeilen mit Teilübereinstimmungen auf. Verwenden Sie den unten angegebenen Befehl, wenn Sie nur das genaue Vorkommen eines Wortes benötigen.

grep -w "string" Testdatei

Das -w oder --word-regexp Die Option grep beschränkt die Ausgabe nur auf exakte Übereinstimmungen. Grep besteht aus einigen zusätzlichen Flags, die auch mit dem Standardbefehl verwendet werden können.

Verbunden: Wie hat Grep seinen Namen bekommen? Die Geschichte hinter Greps Schöpfung

3. Fallunterscheidungen ignorieren

Standardmäßig sucht grep nach Mustern, bei denen zwischen Groß- und Kleinschreibung unterschieden wird. Möglicherweise möchten Sie dies jedoch deaktivieren, wenn Sie vorher nicht wissen, in welchem ​​Fall das Muster vorliegt.

grep -i "diese" Testdatei

Verwenden Sie die -ich oder --Fall ignorieren Option zum Ausschalten der Groß- / Kleinschreibung.

4. Zählen Sie die Anzahl der Muster

Das -c Flagge steht für Anzahl. Es zeigt die Anzahl der Übereinstimmungen an, die für ein bestimmtes Muster gefunden wurden. Administratoren können dies verwenden, um bestimmte Informationen über das System abzurufen.

Sie können pfeifen der Befehl ps mit grep, um die Prozesse zu zählen, die zum aktuellen Benutzer gehören.

ps -ef | grep -c $ USER

Der folgende Befehl zeigt die Anzahl der an MP3 Dateien in einem Verzeichnis vorhanden.

ls ~ / Musik | grep -c .mp3

5. Zeilennummern mit Übereinstimmungen anzeigen

Möglicherweise möchten Sie die Zeilennummern finden, die eine bestimmte Übereinstimmung enthalten. Verwenden Sie die -n oder --Zeilennummer Option von grep, um dies zu erreichen.

cat / etc / passwd | grep -n rubaiat

Diese Option ist besonders nützlich für Debuggen von Quellcodes und Fehlerbehebung bei Protokolldateien. Um alle Zahlen für Zeilen in der anzuzeigen ~ / .vimrc die verwendet werden für Konfigurieren des Vim-Texteditors:

grep -n "set" ~ / .vimrc

6. Suchen von Dateinamen mithilfe von Erweiterungen

Um eine Liste aller zu erhalten MP3 Dateien in der ~ / Musik Verzeichnis:

ls ~ / Musik / | grep ".mp3"

Sie können ersetzen .mp3 mit anderen Erweiterungen zum Auffinden bestimmter Dateien. Der folgende Befehl listet alle auf php Dateien im aktuellen Arbeitsverzeichnis vorhanden.

ls | grep ".php"

7. Suchen Sie nach Mustern in komprimierten Dateien

Der Linux-Befehl grep kann auch Muster in komprimierten Dateien finden. Sie müssen die verwenden zgrep Befehl dafür jedoch. Erstellen Sie zunächst ein komprimiertes Archiv unserer Testdatei durch Eingabe von:

gzip Testdatei

Jetzt können Sie im resultierenden Archiv nach Text oder anderen Mustern suchen.

zgrep email test-file.gz

8. E-Mail-Adressen suchen

Administratoren können mit dem Linux-Befehl grep auch E-Mail-Adressen aus Textdateien auflisten. Im folgenden Beispiel wird nach einem Muster für reguläre Ausdrücke gesucht.

grep '^ [a-zA-Z0-9] \ + @ [a-zA-Z0-9] \ + \. [a-z] \ {2, \}' Testdatei

Sie können reguläre Ausdrücke für ähnliche Aufgaben finden oder sie selbst erstellen, wenn Sie wissen, wie sie funktionieren.

9. Suchen Sie Telefonnummern mit Grep

Sie können reguläre grep-Ausdrücke verwenden, um Telefonnummern aus einer Textdatei herauszufiltern. Beachten Sie, dass Sie das Muster anpassen müssen, um es an die Art der benötigten Telefonnummern anzupassen.

grep '\ (([[0-9] \ {3 \}) \ | [0-9] \ {3 \} \) [-] \? [0-9] \ {3 \} [-] \? [0-9] \ {4 \} 'Testdatei

Der oben genannte Befehl filtert zehnstellige amerikanische Telefonnummern heraus.

10. Suchen Sie URLs aus Quelldateien

Wir können die Leistung von grep nutzen, um URLs in Textdateien aufzulisten. Der unten angegebene Befehl druckt alle im Testdatei.

grep -E "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4}) "Testdatei

Wir benutzen wieder die -E Option für erweiterte reguläre Ausdrücke. Sie können auch die verwenden egrep Befehl, um das Hinzufügen zu vermeiden.

egrep "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4})" Test -Datei

Beherrschen des Linux Grep-Befehls

Wir haben einige nützliche Beispiele für den Linux-Befehl grep vorgestellt, mit denen Probleme der realen Welt gelöst werden können. Obwohl diese Beispiele die Leistungsfähigkeit von grep für die Textverarbeitung veranschaulichen, müssen Sie reguläre Ausdrücke beherrschen, wenn Sie mit grep überaus produktiv sein möchten.

Manchmal stoßen Linux-Benutzer auf bestimmte Situationen, in denen sie sich nicht an die verschiedenen Optionen eines Befehls erinnern können. Hoffentlich bietet Ihnen das Linux-Betriebssystem Möglichkeiten, Befehlszeilenhilfe für fast jedes Systemdienstprogramm zu erhalten.

Email
7 Möglichkeiten, um unter Linux eine Befehlszeilenhilfe zu erhalten

Alle wichtigen Befehle zum Erlernen von Linux-Befehlen über die Befehlszeile

Weiter lesen

Verwandte Themen
  • Linux
  • Linux
  • Linux-Befehle
Über den Autor
Rubaiat Hossain (15 Artikel veröffentlicht)

Rubaiat ist ein CS-Absolvent mit einer starken Leidenschaft für Open Source. Er ist nicht nur ein Unix-Veteran, sondern beschäftigt sich auch mit Netzwerksicherheit, Kryptografie und funktionaler Programmierung. Er ist ein begeisterter Sammler gebrauchter Bücher und hat eine unendliche Bewunderung für klassischen Rock.

Mehr von Rubaiat Hossain

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Noch ein Schritt…!

Bitte bestätigen Sie Ihre E-Mail-Adresse in der E-Mail, die wir Ihnen gerade gesendet haben.

.