Примеры find.
Меняем права у файлов рекурсивно в директории www.
find /www. -type f -exec chmod 644 {} \;
Меняем права у директорий рекурсивно в директории www.
find /www/ -type d -exec chmod 755 {} \;
Ищем файлы старше файла 111.txt.
find . -newer 111.txt -type f -print
Ищем файлы по названию, по началу названия у файлов.
find . -type f -name "2015*" -print
Поиск файлов с названием sts и mod
find . \( -name "sts*" -or -name "mod*" \) -type f -print
Ищем файлы начинающиеся с а до n.
find / -name «[a-n]*» -print
Ищем файлы принадлежащему пользователю, подсчитываем их объем.
find / -user rodogas -exec du -sm {} \;|awk '{s+=$1}END{print s}'
Ищем символические ссылки в директории /usr/
find /usr/ -type l -prin
В поддиректориях не ищем, только в директории, как бы в верхнем уровне.
find /usr/www/ -maxdepth 1 -name '*txt'
Короткое правило, директорию В текущей директории без обработки директории local, файлы больше 110 Мегабайт и менее 377 Мегабайт, и файлы заканчивающиеся на txt.
find . -local \( \( -size +110M -and -size -377M \) -or -name "*.txt" \) -and -type f
Выводим логи объемом больше 100 Мегабайт.
find /var/log/nginx/ -type f -name "*log*" -size +100M
Удаляем файлы по расширению.
find /mnt/usr/ -type f -name "*txt" -exec rm {} \;
Ищем файлы измененные 25 дней назад.
find /mnt/usr/ -ctime -25 -type f
Сжимаем логи чей объем больше 80 метров.
find ~ -size +80M -regex '.*[^gz]' -exec gzip '{}' ';'
Исключаем директорию или файлы из поиска, будет убрано все что содержит в названии subscr_e.
find /mnt/backup/tttt/ \( ! -regex '.*subscr_e.*' \) -type f -name '*.php'
Исключения удаления директории search.
find /mnt/backup/tttt/ -type f -mtime +2 -print0 \! -path '*/search/*' | /usr/bin/xargs -0 /bin/rm -rf
Конечно это не все примеры find, их гораздо больше.
Pingback: Оптимизация изображений на сервере. - FRYAHA.RU