Heim > System-Tutorial > LINUX > Optionen und Parameter, die für den Befehl „find' unter Linux verfügbar sind

Optionen und Parameter, die für den Befehl „find' unter Linux verfügbar sind

WBOY
Freigeben: 2024-01-03 10:55:19
nach vorne
1048 Leute haben es durchsucht

Namensoption verwenden:

Die Option „Dateiname“ ist die am häufigsten verwendete Option für den Suchbefehl. Diese Option wird entweder allein oder zusammen mit anderen Optionen verwendet. Sie können ein Dateinamenmuster verwenden, um Dateien abzugleichen. Denken Sie daran, das Dateinamenmuster in Anführungszeichen zu setzen. Unabhängig vom aktuellen Pfad: Wenn Sie in Ihrem Stammverzeichnis $HOME eine Datei mit einem Dateinamen finden möchten, der mit *.log übereinstimmt, verwenden Sie „~“ als „Pfadname“-Parameter und die Tilde „~“ stellt das Heimatverzeichnis des aktuellen Benutzers dar.

Suchen Sie die .log-Datei des Home-Verzeichnisses des aktuell angemeldeten Benutzers:

> find ~ -name "*.log"
Nach dem Login kopieren

Suchen Sie im aktuellen Verzeichnis nach Dateien, die mit einem Großbuchstaben beginnen:

> find . -name "[A-Z]*"
Nach dem Login kopieren

Suchen Sie im Verzeichnis /etc nach Dateien, die mit sys beginnen:

> find /etc -name "sys*"
Nach dem Login kopieren

Fordern Sie Bilder im aktuellen Verzeichnis an, die mit einem Großbuchstaben + 3 Ziffern beginnen .png

> find . -name "[A-Z]*[0-9][0-9][0-9].png"
Nach dem Login kopieren

Verwenden Sie die Dauerwellenoption:

Verwenden Sie die Option -perm, um entsprechend dem Dateiberechtigungsmodus nach Dateien zu suchen. Am besten verwenden Sie für Berechtigungen die Oktalschreibweise. Wenn Sie eine Datei mit dem Dateiberechtigungsbit 755 im aktuellen Verzeichnis finden möchten, d. h. der Dateieigentümer kann lesen, schreiben und ausführen, andere Benutzer können lesen und ausführen, können Sie

verwenden
> find . -perm 755 
Nach dem Login kopieren

find -perm -mode Dies zeigt an, dass die im Modus in eine Binärdatei konvertierte 1 mit den Dateiberechtigungsbits übereinstimmen muss. Wenn beispielsweise Modus = 644 ist, wird sie als 110 100 100 in eine Binärdatei konvertiert, und die Berechtigungsbits der durchsuchten Datei können ebenfalls in eine Binärdatei konvertiert werden eine Binärzahl. Zwei Bits, die Einsen sind, müssen genau übereinstimmen, während Nullen keine Rolle spielen. Wenn die Berechtigungen der durchsuchten Datei beispielsweise 111 111 111 in Binärzahlen umgewandelt sind, wird dies abgeglichen, wenn es jedoch 100 100 100 ist, wird es nicht abgeglichen. Die Funktion dieses „-“ läuft also darauf hinaus, Dateien mit ausreichenden Berechtigungen als im Modus abzugleichen (ich kann keine Worte finden, um es zu beschreiben)

Ein Verzeichnis ignorieren:

Wenn Sie bei der Suche nach Dateien ein bestimmtes Verzeichnis ignorieren möchten, weil Sie wissen, dass die gesuchte Datei in diesem Verzeichnis nicht vorhanden ist, können Sie mit der Option -prune das Verzeichnis angeben, das ignoriert werden soll. Seien Sie vorsichtig, wenn Sie die Option -prune verwenden, denn wenn Sie auch die Option - Depth verwenden, wird die Option -prune vom Befehl find ignoriert. Wenn Sie Dateien im aktuellen Verzeichnis finden möchten, aber nicht im Verzeichnis ./bin, können Sie

verwenden
> find . -path "./bin" -prune -o -print
Nach dem Login kopieren

Vermeiden Sie mehrere Ordner:

> find . \( -path "./bin" -o -path "./doc" \) -prune -o -print

Nach dem Login kopieren

Klammern geben die Kombination von Ausdrücken an. Gibt einen Verweis an, der die Shell anweist, die folgenden Zeichen nicht speziell zu interpretieren, sondern dem Befehl find die Interpretation ihrer Bedeutung zu überlassen.

Um nach einer bestimmten Datei zu suchen, werden -name und andere Optionen nach -o:

hinzugefügt
> find . \( -path "./bin" -o -path "./doc" \) -prune -o-name "*.txt" -print

Nach dem Login kopieren

<span style="background-color: initial;">user nouser</span><span style="background-color: initial;">group nogroup</span>

Finden Sie die Datei, deren Eigentümer root im aktuellen Verzeichnis

ist
> find . -user root 

Nach dem Login kopieren

Gelöschte Dateien finden, die zum aktuellen Verzeichnis gehören:

> find . -nouser

Nach dem Login kopieren

Suchen Sie im aktuellen Verzeichnis nach Dateien, deren Gruppe root ist:

> find . -group root 

Nach dem Login kopieren

Suchen Sie gelöschte Dateien in der Gruppe, zu der das aktuelle Verzeichnis gehört:

> find . -nogroup

Nach dem Login kopieren

Dateien nach Zeit suchen

Finden Sie Dateien, die innerhalb von 7 Tagen geändert wurden:

> find . -mtime -7

Nach dem Login kopieren

Dateien finden, die vor 7 Tagen geändert wurden:

> find . mtime +7

Nach dem Login kopieren

Suchen Sie nach Dateien, die neuer oder älter als eine bestimmte Datei sind

Finden Sie Dateien mit Änderungszeiten, die neuer als Datei a.log, aber älter als Datei b.log sind:

> find . -newer a.log ! -newer b.log

Nach dem Login kopieren

Dateien finden, deren Änderungszeit neuer als eine.log-Datei ist:

> find . -newer a.log

Nach dem Login kopieren

Typoption

Suchen Sie alle Verzeichnisse im Verzeichnis /etc:

> find /etc -type d

Nach dem Login kopieren

Finden Sie alle symbolischen Linkdateien im Verzeichnis /etc:

> find /etc -type l

Nach dem Login kopieren

Größenparameter

Sie können Dateien nach ihrer Länge durchsuchen. Die hier angegebene Dateilänge kann in Blöcken oder Bytes gemessen werden. Die Ausdrucksform der in Bytes gemessenen Dateilänge ist N c; die in Blöcken gemessene Dateilänge kann nur durch Zahlen ausgedrückt werden. Bei der Suche nach Dateien nach Dateilänge wird im Allgemeinen diese Dateilänge in Bytes verwendet, um die Größe des Dateisystems anzuzeigen, da die Konvertierung mithilfe von Blöcken zur Messung einfacher ist.

Suchen Sie Dateien mit einer Dateilänge von mehr als 100 MB im aktuellen Verzeichnis:

> find . -size +100M

Nach dem Login kopieren

Tiefenoption verwenden:

在使用find命令时,可能希望先匹配所有的文件,再在子目录中查找。使用depth选项就可以使find命令这样做。这样做的一个原因就是,当在使用find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份子目录中的文件。

先输出子内容,再输出上层目录内容,直到最顶层:

> find test -depth! -empty

test/test1/test2/test3

test/test1/test2

test/test1

test
Nach dem Login kopieren

先输出顶层目录,再输出下面的各层子目录内容,直到最低层:

> find test ! -empty

test

test/test1

test/test1/test2

test/test1/test2/test3
Nach dem Login kopieren

mount选项:

在当前的文件系统中查找文件(不进入其他文件系统),可以使用find命令的mount选项。

从当前目录开始查找位于本文件系统中文件名以.txt结尾的文件:

> find . -mount -name "*.txt"-print

Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonOptionen und Parameter, die für den Befehl „find' unter Linux verfügbar sind. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jb51.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage