Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
tux:find [2011/04/17 17:06] wikisysop |
tux:find [2012/10/25 16:13] (aktuell) wikisysop |
||
---|---|---|---|
Zeile 23: | Zeile 23: | ||
| <fc #008000>-group</fc> | Sucht nach Dateien oder Verzeichnissen die zu einer bestimmten Gruppe gehören | | | <fc #008000>-group</fc> | Sucht nach Dateien oder Verzeichnissen die zu einer bestimmten Gruppe gehören | | ||
| <fc #008000>-perm //Octalzahl//</fc> |Sucht nach den Berechtigungen Octalzahl von Dateien oder Verzeichnisse zB -perm 777 | | | <fc #008000>-perm //Octalzahl//</fc> |Sucht nach den Berechtigungen Octalzahl von Dateien oder Verzeichnisse zB -perm 777 | | ||
- | | <fc #008000>-amin //n//</fc> |Sucht nach Dateien welche in den letzten //n// Minuten in Verwendung waren | | + | | <fc #008000>-cmin //n//</fc> |Sucht nach Dateien welche in den letzten //n// Minuten geändert wurden | |
| <fc #008000>-type [fdl]</fc> |Sucht nach angebenen Dateitypen: <fc #008000>f -> Datei; d -> Verzeichnis; l -> symbolischer Link</fc> | | | <fc #008000>-type [fdl]</fc> |Sucht nach angebenen Dateitypen: <fc #008000>f -> Datei; d -> Verzeichnis; l -> symbolischer Link</fc> | | ||
| <fc #008000>-empty</fc> |Sucht nach leeren Dateien oder Verzeichnissen | | | <fc #008000>-empty</fc> |Sucht nach leeren Dateien oder Verzeichnissen | | ||
Zeile 42: | Zeile 42: | ||
**Ausgabe an weitere Kommandos weiterleiten (Actions):** | **Ausgabe an weitere Kommandos weiterleiten (Actions):** | ||
- | Oft ist es mit der Anzeige der gefundenen Resultate nicht getan, viel mehr wird die Ausgabe häufig weiterverarbeitet. Das kann zB ein Lösch-Befehl, ein Verschieben-Befehl oder ein Umbennen-Befehl sein. Dem <fc #008000>find</fc>-Befehl stehen dafür zahlreiche Action Kommandos zur Verfügung. Die folgende tabelle enthält ein paar Beispiele, welche öfter verwendet werden: | + | Oft ist es mit der Anzeige der gefundenen Resultate nicht getan, viel mehr wird die Ausgabe häufig weiterverarbeitet. Das kann zB ein Lösch-Befehl, ein Verschieben-Befehl oder ein Umbennen-Befehl sein. Dem <fc #008000>find</fc>-Befehl stehen dafür zahlreiche Action Kommandos zur Verfügung. Die folgende Tabelle enthält ein paar Beispiele, welche öfter verwendet werden: |
^ Action ^ Beschreibung ^ | ^ Action ^ Beschreibung ^ | ||
Zeile 48: | Zeile 48: | ||
| <fc #008000>-exec //command {}[;+]//</fc> | Execute Command; alle von find gefundenen Ergebnisse werden dem durch -exec ausgeführten\\ Kommando als Argument übergeben. Das Semikolon bzw Plus-Zeichen schliesst den Befehl ab. Werden\\ viele Argumente dem Befehl übergeben kann die Verwendung des Plus-Zeichens die Performance des\\ auszuführenden Befehls deutlich erhöhen. Besitzt ein Kommando mehr Argumente, legt die Zeichenfolge {}\\ die Position der von find gelieferten Argumente fest.| | | <fc #008000>-exec //command {}[;+]//</fc> | Execute Command; alle von find gefundenen Ergebnisse werden dem durch -exec ausgeführten\\ Kommando als Argument übergeben. Das Semikolon bzw Plus-Zeichen schliesst den Befehl ab. Werden\\ viele Argumente dem Befehl übergeben kann die Verwendung des Plus-Zeichens die Performance des\\ auszuführenden Befehls deutlich erhöhen. Besitzt ein Kommando mehr Argumente, legt die Zeichenfolge {}\\ die Position der von find gelieferten Argumente fest.| | ||
| <fc #008000>-ok //command {};//</fc> | Wie <fc #008000>-exec</fc>, fordert jedoch eine Bestätigung zum Ausführen des Kommandos auf| | | <fc #008000>-ok //command {};//</fc> | Wie <fc #008000>-exec</fc>, fordert jedoch eine Bestätigung zum Ausführen des Kommandos auf| | ||
- | | <fc #008000>-print0</fc> | Schreibt den vollständigen Namen der Datei oder des Verzeichnisses zur Standardausgabe,\\ gefolgt von einem <fc #008000>NULL-Zeichen</fc> an Stelle des sonst üblichen <fc #008000>NEWLINE-Zeichen</fc>. Dies kann notwendig\\ sein, wenn in den Suchergebnissen Leerzeichen zu erwarten sind, da darauf folgende Kommandos\\ ein Leerzeichen häufig als Ende des Arguments verstehen. Dem ausführenden Operator kann\\ (-exec oder -xargs) kann dann mitgeteilt werden, das Argument bis zum NULL-Zeichen zu lesen || | + | | <fc #008000>-print0</fc> | Schreibt den vollständigen Namen der Datei oder des Verzeichnisses zur Standardausgabe,\\ gefolgt von einem <fc #008000>NULL-Zeichen</fc> an Stelle des sonst üblichen <fc #008000>NEWLINE-Zeichen</fc>. Dies kann notwendig\\ sein, wenn in den Suchergebnissen Leerzeichen zu erwarten sind, da darauf folgende Kommandos\\ ein Leerzeichen häufig als Ende des Arguments verstehen. Dem ausführenden Operator kann\\ (-exec oder -xargs) kann dann mitgeteilt werden, das Argument bis zum NULL-Zeichen zu lesen | |
**Beispiele:** <fs 0.8em>(Syntaxcheck an Mac OSX 10.6.3 -> Darwin 10.0)</fs> | **Beispiele:** <fs 0.8em>(Syntaxcheck an Mac OSX 10.6.3 -> Darwin 10.0)</fs> | ||
Zeile 54: | Zeile 54: | ||
Sucht rekursiv ab //aktuellen Verzeichnis// (.) nach Dateien oder Verzeichnissen die exakt //IMG_1234.jpg// heissen: | Sucht rekursiv ab //aktuellen Verzeichnis// (.) nach Dateien oder Verzeichnissen die exakt //IMG_1234.jpg// heissen: | ||
- | <xterm>$ <fc #008000>find . -name IMG_1234.jpg -print</fc> | + | <xterm>$ <fc #008000>find . -name IMG_1234.jpg</fc> |
</xterm> | </xterm> | ||
Zeile 64: | Zeile 64: | ||
Sucht im gesamten //Homedirectory// (~) des angemeldeten Users nach Dateien und Verzeichnissen die dem User //root// gehören: | Sucht im gesamten //Homedirectory// (~) des angemeldeten Users nach Dateien und Verzeichnissen die dem User //root// gehören: | ||
- | <xterm>$ <fc #008000>find ~ -user root -print</fc> | + | <xterm>$ <fc #008000>find ~ -user root</fc> |
</xterm> | </xterm> | ||
Sucht im //gesamten Dateisystem// (/) nach Dateien oder Verzeichnissen die der Gruppe //ftp// angehören: | Sucht im //gesamten Dateisystem// (/) nach Dateien oder Verzeichnissen die der Gruppe //ftp// angehören: | ||
- | <xterm>$ <fc #008000>find / -group ftp -print</fc> | + | <xterm>$ <fc #008000>find / -group ftp</fc> |
</xterm> | </xterm> | ||
Sucht im //gesamten Dateisystem// (/) nach Dateien und Verzeichnissen mit Vollberechtigung //(777)//: | Sucht im //gesamten Dateisystem// (/) nach Dateien und Verzeichnissen mit Vollberechtigung //(777)//: | ||
- | <xterm>$ <fc #008000>find / -perm 777 -print</fc> | + | <xterm>$ <fc #008000>find / -perm 777 -print0</fc> |
</xterm> | </xterm> | ||
Sucht im Verzeichnis ///var/log// nach Dateien die mit //.log// enden und in den //letzten fünf Minuten// (-5) verwendet wurden: | Sucht im Verzeichnis ///var/log// nach Dateien die mit //.log// enden und in den //letzten fünf Minuten// (-5) verwendet wurden: | ||
- | <xterm>$ <fc #008000>find -L /var/log -amin -5 -name \*.log -print</fc> | + | <xterm>$ <fc #008000>find -L /var/log -cmin -5 -name \*.log</fc> |
</xterm> | </xterm> | ||
Sucht rekursiv in //tmp// nach leeren Dateien oder Verzeichnissen: | Sucht rekursiv in //tmp// nach leeren Dateien oder Verzeichnissen: | ||
- | <xterm>$ <fc #008000>find -L /tmp -empty -print</fc> | + | <xterm>$ <fc #008000>find -L /tmp -empty -print0</fc> |
</xterm> | </xterm> | ||
Sucht rekursiv im eigenen //Homedirectory// (~) nach Dateien grösser 1GB: | Sucht rekursiv im eigenen //Homedirectory// (~) nach Dateien grösser 1GB: | ||
- | <xterm>$ <fc #008000>find ~ -size +1G -print</fc> | + | <xterm>$ <fc #008000>find ~ -size +1G -print0</fc> |
</xterm> | </xterm> | ||
Sucht rekursiv in Verzeichnis ///var/log// nach Dateien die mit //.log// enden und //grösser// (+) als 500 KB sind: | Sucht rekursiv in Verzeichnis ///var/log// nach Dateien die mit //.log// enden und //grösser// (+) als 500 KB sind: | ||
- | <xterm>$ <fc #008000>find -L /var/log -name \*.log -a -size +500k -print</fc> | + | <xterm>$ <fc #008000>find -L /var/log -name \*.log -a -size +500k</fc> |
</xterm> | </xterm> | ||
Sucht nur im Verzeichnis ///var/log// nach Dateien die //kleiner// (-) sind als 500KB und //nicht// (!) dem User //root// gehören: | Sucht nur im Verzeichnis ///var/log// nach Dateien die //kleiner// (-) sind als 500KB und //nicht// (!) dem User //root// gehören: | ||
- | <xterm>$ <fc #008000>find -L /var/log -maxdepth 1 -size -500k -a ! -user root -print</fc> | + | <xterm>$ <fc #008000>find -L /var/log -maxdepth 1 -size -500k -a ! -user root</fc> |
</xterm> | </xterm> | ||
Zeile 130: | Zeile 130: | ||
\\ | \\ | ||
--- //pronto 2010/04/04 17:16// | --- //pronto 2010/04/04 17:16// | ||
- | {{keywords>linux syntax beispiele debian osx}} | + | {{keywords>linux find syntax beispiele}} |