Nächste Überarbeitung | Vorhergehende Überarbeitung |
find [2015/07/22 11:32] – angelegt olli | find [2021/01/01 18:17] (aktuell) – [Aktionen] olli |
---|
====== find ====== | ===== find ===== |
''find'' ist ein Befehl zum Finden von Dateien unter [[Linux]] | ''find'' ist ein Befehl zum Finden von Dateien unter [[Linux]]. |
| Mit den von ''find'' gefunden Dateien lassen sich verschiedene Aktionen durchführen. |
| |
===== exec ===== | ==== Aktionen ==== |
Mit den von ''find'' gefunden Dateien lässt sich eine Aktion durchführen. | ^Aktion ^Beschreibung^ |
Dazu dient der Parameter ''-exec'', die geschweiften Klammern werden nacheinander durch die gefunden Dateien ersetzt und das Kommando ausgeführt. | |''-exec Kommando {} \;''|Führt den Befehl ''Kommando'' aus. Die geschweiften Klammern werden nacheinander durch die gefunden Dateien ersetzt und das Kommando ausgeführt.| |
Das folgende Beispiel löscht alle Datei im Ordner ''/test'', die älter als ein Tag sind: | |''-execdir Kommando {} \;''|Wie ''-exec'', führt den Befehl ''Kommando'' jedoch im Verzeichnis der gefundenen Datei aus. | |
<code bash> | |''-ok Kommando {} \;''|Wie ''-exec'', fragt jedoch vor jeder Aktion nach Bestätigung| |
find /test -mtime 1 -exec rm {} \; | |''-okdir Kommando {} \;''|Wie eine Kombination aus ''-execdir'' und ''-ok''| |
</code> | |''-delete''|Löscht gefundene Dateien| |
| |''-fprint file.txt''|Schreibt gefundene Dateien in Datei ''file.txt''| |
| |
<WRAP tip round> | <WRAP tip round> |
</WRAP> | </WRAP> |
| |
===== Links ===== | <WRAP tip round> |
| Wird ein ''+'' statt dem ''\;'' verwendet, werden mehrere Dateien auf einmal an den auszuführenden Befehl übergeben. |
| Beispiel: ''-exec Kommando {} +'' oder siehe [[grep#dateinamen_anzeigen|grep-Beispiel]] |
| </WRAP> |
| |
| ==== Beispiele ==== |
| === Nach Datei mit einem Teilpfad suchen === |
| Um eine Datei ''filename'' in einem Unterverzeichnis ''partialdir'' zu finden: |
| <code bash> |
| find . -wholename "*partialdir/filename"; |
| </code> |
| <WRAP tip round> |
| Es muss ''wholename'' stat ''name'' verwendet werden, der Teilpfad muss mit ''*'' beginnen und der ganze String in doppelten Anführungszeichen stehen. |
| </WRAP> |
| ==== Links ==== |
* [[http://www.gnu.org/software/findutils/findutils.html|Homepage]] | * [[http://www.gnu.org/software/findutils/findutils.html|Homepage]] |
* [[http://www.gnu.org/software/findutils/manual/html_mono/find.html|Dokumentation]] | * [[http://www.gnu.org/software/findutils/manual/html_mono/find.html|Dokumentation]] |
* [[https://de.wikipedia.org/wiki/Find|Wikipedia-Artikel zu find]] | * [[https://de.wikipedia.org/wiki/Find|Wikipedia-Artikel zu find]] |