Suchen und finden
find
find ab_wo_wird_gesucht was_wird_gesucht aktion find [Pfad] [Bedingung] [Aktion]
Nach Namen
find [Pfad] -name [Name]
Finde alle Dateien mit Namen test ab dem Verzeichnis /home und gebe diese Zeilenweise aus
root@zero:~# find /home -name test -print /home/xinux/test /home/test
Wie oben, jedoch mit Namensanfang test
root@zero:/home/xinux# find /home -name 'test*' /home/xinux/testdatei /home/xinux/test /home/test
Nach Benutzer(Eigentümer)
root@zero:/tmp# find /tmp/ -user xinux /tmp/datei
Nach Gruppe
root@zero:/tmp# find /tmp/ -group hacker /tmp/datei3 /tmp/datei2
Nach Typ
Es wird nach Dateien anhand Ihrer Art gesucht:
find [Pfad] -type [Typ]
Typ:
- f: Normale Dateien
root@zero:~# find /tmp/ -type f /tmp/mbr.img /tmp/datei /tmp/zeugs /tmp/.X0-lock
- d: Verzeichnisse
root@zero:~# find /var/log -type d /var/log /var/log/apache2 /var/log/unattended-upgrades /var/log/apparmor /var/log/ConsoleKit /var/log/dist-upgrade /var/log/dist-upgrade/20090526-1052 /var/log/cups /var/log/apt /var/log/fsck /var/log/samba /var/log/samba/cores /var/log/samba/cores/smbd /var/log/samba/cores/nmbd /var/log/samba/cores/winbindd /var/log/installer /var/log/gdm /var/log/news
- c: Char Devices (Zeichenorientierte Gerätedatei)
root@zero:~# find / -type c /lib/udev/devices/kmem /lib/udev/devices/null /lib/udev/devices/console /lib/udev/devices/ppp /lib/udev/devices/net/tun
- b: Block Devices (Blockorientierte Gerätedatei)
- p: Benannte Pipe
- l: Links
- s: Sockets
Nach Permissions
root@cardassia:~# find /usr/bin/ -perm /4000 -exec ls -l {} \; -rwsr-xr-x 1 root root 115136 2008-09-01 15:17 /usr/bin/sudoedit -rwsr-xr-x 1 root root 32988 2008-06-09 20:10 /usr/bin/passwd
Nach Modifikation
Listet alle Dateien in /etc auf, die genau vor zwei Tagen modifiziert wurden
root@zero:/var/log# find /etc/ -mtime 2 -print /etc/apache2 /etc/apache2/mods-available /etc/apache2/conf.d /etc/apache2/sites-available /etc/bash_completion.d /etc/blkid.tab.old /etc/firefox-3.0/profile /etc/firefox-3.0/profile/chrome /etc/firefox-3.0/pref /etc/profile.d /etc/ufw/applications.d /etc/logrotate.d /etc/xulrunner-1.9 /etc/blkid.tab /etc/cron.daily /etc/alternatives /etc/alternatives/x-www-browser /etc/alternatives/xulrunner /etc/gre.d /etc/hal/fdi/policy /etc/dbus-1/system.d /etc/udev/rules.d
Nach Größe
Finde Dateien in /tmp, die größer als 100 MByte sind
root@zero:/tmp# find /tmp/ -size +100M /tmp/datei
Finde Dateien in /tmp, die kleiner als 100 KByte sind
root@zero:/tmp# find /tmp/ -size -100k /tmp/ /tmp/datei3 /tmp/backup /tmp/datei2 /tmp/.winbindd /tmp/.winbindd/pipe /tmp/mbr.img /tmp/zeugs /tmp/.ICE-unix /tmp/.X0-lock /tmp/datei1 /tmp/.X11-unix /tmp/.X11-unix/X0 /tmp/pulse-PKdhtXMmr18n
Nach Berechtigungen
Finde Dateien in Home mit der Berechtigung 777 (-rwxrwxrwx)
root@zero:/var# find /home/ -perm 777 /home/samba /home/xinux/Examples /home/xinux/.pulse/1f0763ee4cf4c7e1d3c07fd149dda37b:runtime /home/test/Examples
Nach Zeit
Modifiziert in der letzten Minute
root@zero:~# find /var -mmin -1 /var/log/debug /var/log/kern.log /var/log/syslog /var/run/klogd/kmsg
Modifiziert vor mehr als 9 Tagen
root@zero:~# find /var -mtime +9
Zugriff vor mehr als 9 Minuten
root@zero:~# find /var -amin +9
Kenndaten geändert in den letzen 2 Tagen
root@zero:~# find /var -ctime -2
Ausführen eines Befehls
root@zero:~# find / -name "xinux?" -exec ls -l {} \;
Ausführen eines Befehls mit Rückfrage
root@zero:~# find / -name "xinux?" -ok rm {} \; < rm ... /tmp/xinux3 > ? y < rm ... /tmp/xinux2 > ? n < rm ... /tmp/xinux1 > ? y
locate
Locate arbeitet über einen Index, der erstellt und aktualisiert werden muss. Aus diesem Grund kann locate teilweise nicht akutell sein. Es ist immer schneller als find und es durchsucht immer das ganze Dateisystem.
locate [Dateiname]
Lokalisiere die Datei wvdial.conf. Anmerkung: Der Stern wird beim Suchen automatisch hinzugefügt. Entspricht also wvidal.conf*
root@zero:~# locate wvdial.conf /etc/wvdial.conf /usr/share/man/man5/wvdial.conf.5.gz /var/lib/dpkg/info/wvdial.conffiles /var/lib/dpkg/info/wvdial.config
Lokalisiere die Datei wvdial.conf und nur diese
root@zero:~# locate -b '\wvdial.conf' /etc/wvdial.conf
Aktualisieren des Indexes
root@zero:~# updatedb