Найти в текущем каталоге и его подкаталогах файлы измененные за два дня от текущего времени:
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].