English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Der Linux-Befehl find wird verwendet, um Dateien im angegebenen Verzeichnis zu suchen. Jeglicher Text vor den Parametern wird als Name des Verzeichnisses betrachtet, das gesucht werden soll. Wenn der Befehl ohne Parameter ausgeführt wird, sucht find Der Befehl wird im aktuellen Verzeichnis nach Unterordnern und Dateien suchen. Alle gefundenen Unterordner und Dateien werden angezeigt.
find path -option [ -print ] [ -exec -ok command ] {} \;
Parameterbeschreibung :
find bewertet path und expression gemäß den folgenden Regeln, der erste - ( ) , ! Vor der Komponente ist path, danach ist expression. Wenn path eine leere Zeichenkette ist, wird der aktuelle Pfad verwendet, wenn expression eine leere Zeichenkette ist, wird -print ist die Standardausgabe für expression.
Es gibt mehr als zwei Dutzend Optionen, die in expression verwendet werden können, hier werden nur die häufigsten vorgestellt.
-mount, -xdev : Überprüft nur Dateien im selben Dateisystem wie das angegebene Verzeichnis, um Dateien aus anderen Dateisystemen auszuschließen
-amin n : Dateien, die in den letzten n Minuten gelesen wurden
-anewer file : Dateien, die später als die Datei file gelesen wurden
-atime n : Dateien, die in den letzten n Tagen gelesen wurden
-cmin n : Dateien, die in den letzten n Minuten geändert wurden
-cnewer file : Dateien, die jünger sind als die Datei file
-ctime n : Dateien, die in den letzten n Tagen geändert wurden
-empty : Leere Datei-gid n oder -group name : gid ist n oder der Gruppenname ist name
-ipath p, -path p : Dateien, deren Pfadname dem Namen p entspricht, ipath ignoriert Groß- und Kleinschreibung.
-name name, -iname name : Dateien, deren Namen dem Namen name entsprechen. iname ignoriert Groß- und Kleinschreibung.
-size n : Dateigröße ist n Einheiten, b steht für 512 Blöcke, c steht für Zeichen, k steht für kilobytes, w für zwei Blöcke.
-type c : Datei, deren Dateityp c ist.
d: Verzeichnis
c: Zeichengerätdatei
b: Blockgerätdatei
p: Benannter Speicherort
f: Allgemeine Datei
l: Symbolische Verknüpfung
s: Socket
-pid n : Datei, deren Prozess-ID n ist
Sie können Operationen mit () trennen und die folgenden Operationen verwenden.
exp1 -und exp2
! expr
-nicht expr
exp1 -oder exp2
exp1, exp2
Liste alle Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen auf, deren Dateiendung .c ist:
# find . -name "*.c"
Liste alle allgemeinen Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen auf:
# find . -type f
Listen Sie alle kürzlich aktualisierten Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen auf: 2Innerhalb der letzten 0 Tagen aktualisierte Dateien auflisten:
# find . -ctime -20
Suchen /var/Verzeichnis geändert wurden, und fragen Sie sie vor dem Löschen ab: 7 normalen Dateien, deren Änderungszeit in den letzten
# find /var/log -type f -mtime +7 -ok rm {} \;
Suchen Sie Dateien im aktuellen Verzeichnis aus, bei denen der Dateieigentümer Lese- und Schreibrechte hat, und bei denen die Benutzer der Dateigruppe und andere Benutzer Leseberechtigungen haben:
# find . -type f -perm 644 -exec ls -l {} \;
Suchen Sie alle Dateien im System aus, deren Länge 0 ist, und geben Sie ihre vollständigen Pfade an:
# find / -type f -size 0 -exec ls -l {} \;