найти в текущем каталоге и его подкаталогах файлы измененные за два дня от текущего времени
find . -mtime -2d
найти в /var/logs файлы созданные более двух дней назад и удалить их
find /var/logs -mtime +2 |xargs rm
найти только в текущем каталоге файлы с правами 666 и вывести для каждого параметры аналогично «ls -l»
find . -maxdepth 2 -perm 666 -ls
найти в каталоге /bin и подкаталогах файлы размером больше 5Мб (+5000000 символов).
find /bin -size +5000000c
найти только в текущем каталоге все файлы кроме *.php
find . ! -name «*.php» -maxdepth 1
найти только в текущем каталога все файлы *.gif и для каждого из них выполнить chmod 700
find . -name «*.gif» -maxdepth 1 -exec chmod 700 {} \;
отконвертировать все файлы в текущем каталоге и подкаталогах из формата DOS/MAC в UNIX (концы строк)
find . -type f | xargs dos2unix
отконвертировать все файлы в текущем каталоге и подкаталогах из cp1251 в utf-8, выводя имена файлов в процессе
for a in find . -type f
; do echo $a ; iconv -f cp1251 -t utf-8 -o $a.new $a ; mv $a.new $a ; done
заменить во всех файлах в текущем каталоге и его подкаталогах Foo на Bar
for a in find . -type f
; do echo $a ; sed 's/Foo/Bar/g' $a > $a.new ; mv $a.new $a ; done
найти в текущем каталоге подкаталогах все файлы содержащие текстовую строку «mustdie»
grep -r «mustdie» *
посчитать количество файлов в текущей директории и ее поддиректориях
find . -type f | wc -l
напечатать названия файлов с найденным текстом, начиная с каталога /var/log
grep -r -l «Blocked SPAM» /var/log
сделать архив /home, кроме пользователя vasya
tar cvzf backup_homes.tgz ls /home|grep -v vasya
найти в текущем каталоге подкаталогах все файлы содержащие «fail» или «failed»
egrep -r «fail|failed» *
вывести все строки smb.conf, кроме комментариев и пустых строк egrep -v '(^[#;])|(^$)' smb.conf
egrep поддерживает также и другие регулярные выражения по синтаксису в основном сходные с [http://www.perl.com/doc/manual/html/pod/perlre.html RegExp в Perl].