Shell Programmierung >> Find Befehl

Find Befehl Linux


Mit dem Find Befehl kann man in der Linux Shell umfangreiche Suchoperationen durchführen. So ist es beispielsweise möglich, sich alle Dateien anzeigen, die einem bestimmten Buchstaben enthalten, mit einem kleinen „l“ anfangen und so weiter. Der Kreativität sind da keine Grenzen gesetzt.

Der Find-Befehl setzt sich wie folgt zusammen:

FIND [verzeichnis] –[selectoption] –[actionoption]



Selectoptionen vom Find-Befehl


Name Bedeutung
-name „namensmuster“ Listet Dateien auf, die ein entsprechendes Namensmuster enthalten. Siehe dazu „Wildcards“.
- perm „Rechte“ Datei suchen, die bestimmte Rechte haben
- size „+/- n k“ Dateigrößer „+“ größer als , „- „ kleiner als n kb
- type „d oder f“ Typ ist Verzeichnis („d“) oder Datei („f)
- user „username“ Dateien suchen, die einem bestimmten User gehören
- newer "datei" Listet Dateien auf, die neuer als eine Referenzdatei sind
- atime "n" Letzer Zugriff vor n Tage
- mtime "n" Letze Änderung vor n Tagen

Wildcards / Platzhalter für Namensmuster


Name Bedeutung Beispiel
? Ein(!) beliebiges Zeichen ??? -> Name besteht aus drei Zeichen
* Beliebig lange Zeichenfolge * -> Es wurden alle Dateinamen angezeigt werden
[!x-y] Zeichenmenge ist nicht enthalten [!0-9] – Ziffern 0-9 sind nicht enthalten
[x-y] Zeichenmenge ist enthalten [0-9] – Ziffern 0-9 sind enthalten

Beispiele für den Find Befehl und der Option „-name“


Find Testverzeichnis –name “*o*“
Listet alle Dateien im Verzeichnis „Testverzeichnis“ auf, die an beliebiger Stelle in „o“ enthalten

Find Testverzeichnis .-name “*[0-9]?“
Listet alle Dateien auf, deren vorletztes Zeichen eine Ziffer (0-9) ist.

Find Testverzeichnis –name “[lL]*[!i]“
Listet alle Dateien, die entweder mit einem „l“ oder einem „L“ beginnen und nicht mit einem „i“ enden.

Beispiele für den Find Befehl und der Option „-perm“


Find –perm 644
Findet alle Dateien, im aktuellen Verzeichnis mit den Rechten 644.

Die Actionoption vom Find-Befehl


Mit der Actionoption lassen sich mit Dateien/Verzeichnissen, die nach verschiedenen Kriterien mittels der Selectoptionen gesucht wurden, bestimmte Aktionen ausführen. Beispielsweise können die Inhalte gesuchter Dateien auf dem Bildschirm angezeigt werden.

Name Bedeutung
- exec "befehl" {} \; Führt Befehl ohne Nachfrage aus.
- ok "befehl"{} \; Führt Befehl mit Nachfrage aus (Bestätigung erfolgt mit „y“)

Beispiele für Find-Befehl mit Actionoption


Find –type f –size -100k –exec cat {} \;
Zeigt den Inhalt aller Dateien an, die kleiner als 100 Kilobyte sind.

Find –type f – newer text.xt –exec ok {} \;
Zeigt den Inhalt aller Dateien an, die neuer als die Datei tex.txt sind. Anzeige muss bestätigt werden.


Buch - Empfehlung
Letzte Forenbeiträge