title: “find zum suchen von Dateien und Verzeichnissen”
date: 2015-04-06T12:36:26
slug: find-zum-suchen-von-dateien-und-verzeichnissen
Find sucht nach Dateien anhand folgender Vorgaben:
Im Verzeichnis “/etc/X11/” recursiv nach allen Dateien und Verzeichnissen beginnend mit x suchen
find /etc/X11/ -name "x\*"
Nach allen Dateien und Verzeichnissen des Users mit der ID 1000 suchen
find / -user 1000
Nach allen Dateien und Verzeichnissen der Gruppe mit der ID 29 suchen
find / -group 29
Nach allen Dateien (ohne Verzeichnissen) des Users mit der ID 1000 suchen
find / -type f -user 1000
Nach Dateien und Verzeichnissen suchen die innerhalb der letzten 24 Stunden verändert worden sind (-mtime = modification time)
find . -name "\*" -mtime 0
Nach Dateien und Verzeichnissen suchen die vor 5 Tagen verändert worden sind (-mtime = modification time)
find . -name "\*" -mtime 5
Nach Dateien und Verzeichnissen suchen die zwischen 5 und 15 Tagen verändert worden sind (-mtime = modification time in Tagen/24h)
find . -name "\*" -mtime +4 -mtime -16
Nach Dateien und Verzeichnissen suchen die innerhalb der letzten 60 Minuten modifiziert worden sind (-mmin = modification time in Minuten)
find . -name "\*" -mmin -60
Nach Verzeichnissen suchen die innerhalb der letzten 60 Minuten modifiziert worden sind (-mmin = modification time in Minuten)
find . -name "\*" -mmin -60 -type d
Als Parameter für -type können folgende Bezeichner verwendet werden:
-type specify the type of file
b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular file
l symbolic link; this is never true if the -L option or the
-follow option is in effect, unless the symbolic link is
broken. If you want to search for symbolic links when -L
is in effect, use -xtype.
s socket
Nach Dateien suchen die größer als 2MB sind:
find . -name "\*" -size +2M
Als Parameter für -size können folgende Bezeichner verwendet werden:
-size n[cwbkMG]
'b' for 512-byte blocks (this is the default if no suffix is used)
'c' for bytes
'w' for two-byte words
'k' for Kilobytes (units of 1024 bytes)
'M' for Megabytes (units of 1048576 bytes)
'G' for Gigabytes (units of 1073741824 bytes)
Nach Dateien und Verzeichnissen suchen die exakt diese Berechtigung (g=w,o=x,u=r) haben
find . -name "\*" -perm g=w,o=x,u=r
Nach Dateien und Verzeichnissen suchen die eine Berechtigung (g=w) beinhalten
!Das wäre z.B auch bei einer Dateiberechtigung von 777 der Fall
find . -name "\*" -perm -g=w
Nach Dateien und Verzeichnissen suchen deren Owner oder Group (g+w,u+w) Schreibrechte haben
find . -perm /g+w,u+w
Nach Dateien und Verzeichnissen beginnend mit Do mittels regulärem Ausdruck suchen
(findet z.B. Downloads und Documents aber nicht zzzDownloads)
find . -regex '\./[D][o].\*'
Alle Dateien mit der Inodenummer 935 anzeigen lassen (Hardlinks)
find . -inum 935
Alle Dateien mit gesetztem suid Bit anzeigen
(2>/dev/null leitet Fehler um, werden nicht gezeigt, z.B: find: `/proc/9679/fd/5′: No such file or directory )
find / -user root -perm +4000 2> /dev/null
Alle Links (soft & hard) einer Datei anzeigen lassen
Wenn -L weg gelassen wird, werden nur Hardlinks angezeigt
find -L . -samefile sdafsd
Suchen nach Dateien und Verzeichnissen mit einer Verzeichnisstiefe von 1 (nur im Angegebenen Verzeichnis, keine Unterverzeichnisse)
find /home/ -maxdepth 1 -name findme
Suchergebnisse (alle Dateien im aktuellen Verzecihnis) weiterverarbeiten, z.B dem Befehler “ls -l” übergeben
find . -name "\*" -type f -exec ls -l {} +