next up previous contents index
Volgende: 7.4 Xargs Omhoog: 7 GNU-utilities Vorige: 7.2 Ldd   Inhoudsopgave   Index

7.3 Find

Dit is een zoekprogramma waarmee echt op je harde schijf wordt gezocht naar een bepaald bestand. Eerst moet de begindirectory opgegeven worden, daarna de opties. Voorbeeld: find / -name Makefile -print Hiermee worden alle Makefile-bestanden in / en in alle subdirectories daarvan getoond. Door -iname te gebruiken wordt niet op hoofd- en kleine letters gelet. Door de optie -ls te gebruiken i.p.v. -print krijg je de bestanden te zien in de vorm van ls -li.

Als je weet hoe groot het gezochte bestand is, kun je de optie -size gebruiken. Zet daar een getal achter en de eenheid (b voor 512-byte blokken, c voor bytes, k voor kilobytes en 2 voor 2-byte words). Voorbeeld: find /usr -size 100k.

Als je een bepaald type bestand zoekt, kun je de optie -type gebruiken. Zet daar een letter achter om aan te geven wat voor type bestand je zoekt. Een b staat voor block (buffered) special, c voor character (unbuffered) special, d voor directory, p voor een named pipe (FIFO), f voor een normaal bestand, l voor een symbolic link en s voor een socket. Deze letters zie je ook helemaal links als je ls -l gebruikt (alleen is f dan een streepje). Voorbeeld: find /tmp -type l.

Om iets met de gevonden bestanden te laten doen, kan de optie -exec gebruikt worden. Zet daar een commando achter dat voor alle bestanden uitgevoerd moet worden. Gebruik daarin '{}' (met enkele quotes dus) om de bestandsnaam te laten invullen op die plaats en ';' om aan te geven dat het einde van het commando is bereikt. Om bijv. naar alle .c-bestanden in /usr/src/linux met de tekst foo erin te zoeken, gebruik je:

find /usr/src/linux -name "*.c" -exec grep -l foo '{}' ';'


next up previous contents index
Volgende: 7.4 Xargs Omhoog: 7 GNU-utilities Vorige: 7.2 Ldd   Inhoudsopgave   Index
Jarkko Huijts 2002-08-17