Dateien in Bash rekursiv finden

Naila Saad Siddiqui 15 Februar 2024
Dateien in Bash rekursiv finden

Dieser Artikel behandelt den find-Befehl in Bash. In diesem Artikel werden Möglichkeiten erörtert, wie Sie einen bestimmten Dateityp mit dem Befehl find in Bash finden können.

Verwenden Sie den Befehl find, um Dateien in Bash rekursiv zu finden

Ein Kommandozeilen-Tool zum Navigieren in der Dateihierarchie ist der Befehl find in Linux. Es kann zum Suchen und Überwachen von Ordnern und Dateien verwendet werden.

Es ermöglicht die Suche nach Name, Erstellungsdatum, Änderungsdatum, Eigentümer und Berechtigungen für Dateien und Ordner.

Es hat die folgende Syntax:

$ find [directory where to start searching] [-options] [name of file]

Folgende Attribute können für Optionen vorhanden sein:

Sr. Nr Möglichkeit Zweck
1 -links N Es sucht nach den Dateien mit irgendeiner Nr. der angegebenen Links.
2 -name Suchen Sie nach einer Datei mit einem bestimmten Namen oder Muster.
3 -neuer [Dateiname] Suchen Sie nach Dateien, die nach dem Dateinamen erstellt wurden.
4 -perm Suchen Sie nach allen Dateien mit bestimmten Berechtigungen.
5 -print Es wird verwendet, um den vollständigen Pfadnamen der Datei zu finden und anzuzeigen.
6 -empty Es sucht nach leeren Dateien oder Verzeichnissen.
7 -Größe +N/-N Es wird verwendet, um nach einer Datei mit einer bestimmten Größe zu suchen. Wenn N als +N verwendet wird, bedeutet dies Dateien mit einer Größe größer als N; Wenn es als -N verwendet wird, bedeutet dies Dateien mit einer Größe von weniger als N.
8 -user Es sucht nach den Dateien mit einem angegebenen Eigentümernamen.

Betrachten wir einige Beispiele für den Befehl find.

Suchen Sie mit dem Dateinamen

$ find ./mydir -name myfile.txt

Dieser Befehl durchsucht das Verzeichnis mydir nach dem Dateinamen myfile.txt.

Ausgang:

Suche mit dem Dateinamen - Ausgabe

Suchen Sie mit einem Muster

$ find ./mydir -name "*.jpeg"

Dieser Befehl durchsucht das Verzeichnis mydir nach allen Dateien mit der Endung .jpeg.

Ausgang:

Suche mit einem Muster - Ausgabe

Suchen Sie nach Dateien mit Berechtigungen

$ find ./mydir -perm 777

Dieser Befehl durchsucht das Verzeichnis mydir nach allen Dateien mit 777-Berechtigungen.

Ausgang:

Nach Dateien mit Berechtigungen suchen - Ausgabe

Finden Sie Dateien mit mehreren Namen oder Mustern

Es kann Situationen geben, in denen Sie nach Dateien mit mehreren Mustern suchen müssen, z. B. wenn Sie nach Dateien mit den Erweiterungen .txt und .jpg suchen müssen.

$ find . -name '*.txt' -o -name '*.jpg'

Für solche Situationen können Sie die Option -name mehrfach verwenden.

Ausgang:

Dateien mit mehreren Mustern finden - Ausgabe

Suchen Sie nach leeren Dateien

$ find mydir -empty

Dieser Befehl sucht nach leeren Dateien oder Verzeichnissen in mydir.

Ausgang:

Nach leeren Dateien suchen - Ausgabe

Verwandter Artikel - Bash File