Suchen Sie alle Dateien mit spezifischem Text
- 4485
- 230
- Tamina Liebach
Sie wissen wahrscheinlich bereits, wie man das benutzt Grep
Befehl zur Suche nach einer Textzeichenfolge in einer Datei unter Linux. Aber was ist, wenn Sie eine Liste von Dateien abrufen möchten, die die Textzeichenfolge enthalten? Dies ist eine Aufgabe, die am besten geeignet ist Grep
oder der Befehl Find. Wir zeigen Ihnen, wie man es in diesem Leitfaden macht.
In diesem Tutorial lernen Sie:
- Wie benutzt man
Grep
Undfinden
Befehle, um alle Dateien mit spezifischem Text zu finden
Kategorie | Anforderungen, Konventionen oder Softwareversion verwendet |
---|---|
System | Jede Linux -Distribution |
Software | N / A |
Andere | Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl. |
Konventionen | # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können |
Suchen Sie nach einem bestimmten Text mit Grep -Befehl
Ohne Zweifel, Grep
ist der beste Befehl, um eine Datei (oder Dateien) nach einem bestimmten Text zu durchsuchen. Standardmäßig werden alle Zeilen einer Datei zurückgegeben, die eine bestimmte Zeichenfolge enthalten. Dieses Verhalten kann mit dem geändert werden -l
Option, die unterrichtet Grep
Um nur die Dateinamen zurückzugeben, die den angegebenen Text enthalten.
Lassen Sie uns dies nun in Aktion sehen. Verwenden Sie die folgende Syntax im Terminal und geben Sie alle Dateien an, die Sie suchen möchten, indem Sie ihren Pfad und ihren Namen am Ende des Befehls anhängen.
$ grep -l Beispieldokument1.txt document2.txtVerwenden Sie Grep, um zu finden, welche Dateien den angegebenen Text enthalten
Die Ausgabe von Grep
zeigt uns, dass unser Suchzeichenfolge „Beispiel“ nur in der vorhanden ist Dokument1.txt
Datei. Vergessen Sie auch nicht, dass Wildcards erlaubt sind und helfen können, herzustellen Grep
effizienter:
$ grep -l Beispiel *.txt
Aber seien wir realistisch. Wenn Sie nur ein paar Dateien durchsuchen, hätten Sie wahrscheinlich nicht diesen Leitfaden gelesen. Höchstwahrscheinlich haben Sie ein Verzeichnis (oder mehrere Verzeichnisse) voller Dateien, nach denen Sie suchen müssen. Das ist kein Problem für Grep
Solange Sie die einschließen -R
(rekursiv) Option im Befehl.
$ grep -lr Beispiel/Pfad/to/verzeichnis1/*.txt/path/to/verzeichnis2
Oder lassen Sie den Pfad am Ende des Befehls den Pfad weg, um das aktuelle Verzeichnis und alle Unterverzeichnisse zu durchsuchen.
$ grep -lr BeispielVerwenden Sie Grep zur rekursiven Suche
Erwägen Sie auch die Verwendung der -ich
Option, die Ihren Suchzeichenfolge Fall unempfindlich macht. Um den Rest der zu erfahren Grep
Die Funktionen des Befehls im Detail finden Sie in unserer Einführung in Grep Guide. Die Mannseite enthält auch hilfreiche Informationen:
$ Grep Mann
Suchen Sie nach einem bestimmten Text mit dem Befehl find
Wenn Sie es vorziehen würden, die zu verwenden finden
Befehl, Sie können die folgende Befehlssyntax verwenden:
$ find/path/to/such -typ f -exec grep -l "your -search -string" \;Verwenden des Befehls zum Finden, um nach Dateien zu suchen, die die Textzeichenfolge enthalten
Noch einmal hinzufügen -ich
zum Grep
Teil des Befehls, den Fall zu ignorieren. Der finden
Und Grep
Methoden funktionieren gut gut. Verwenden Sie das, was Sie bevorzugen, die Sie bevorzugen.
Abschluss
In diesem Handbuch haben wir gesehen, wie alle Dateien mit spezifischem Text unter Linux finden. Wir haben zwei Befehlszeilenmethoden gelernt, um die Aufgabe zu erfüllen, aber noch mehr gibt es.
Verwandte Linux -Tutorials:
- Dinge zu installieren auf Ubuntu 20.04
- Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
- Grundlegende Linux -Befehle
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Linux -Befehle: Top 20 wichtigste Befehle, die Sie benötigen, um…
- So finden Sie eine Zeichenfolge oder einen Text in einer Datei unter Linux
- Dinge zu tun nach der Installation Ubuntu 22.04 Jammy Quallen…
- Installieren Sie Arch Linux in VMware Workstation
- Ubuntu 20.04 Leitfaden
- Dinge zu installieren auf Ubuntu 22.04
- « Gefängnis SSH -Benutzer zum Heimverzeichnis unter Linux
- Installieren Sie Firewalld auf CentOS Linux -System »