Поиск файлов (find) в Linux

Поиск файлов по размеру

find ./ -size +10M #больше 10Mb

find ./ -size -10G #меньше 10Gb

find ./ -size 19k #равны 10Kb

Поиск файлов по имени

find ./ -iname linux* #регистронезависимый поиск

find ./ - linux # регистрозависимый

Поиск файлов по дате

find ./ -mmin -10 #дата модификации меньше 10мин

find ./ - +1 #дата модификации больше суток

find ./ - f -atime +10 # время обращения больше 10 дней

find ./ -type f -amin -10 #дата модификации последние 10мин

Выполнение команд над найденными файлами

find ./ -mmin -10 - ls -l {} \; # выполняем команду ls -l над найденными файлами

Поиск файлов со сменными носителями

find / -xdev -name «*.» #искать с исключением сменных носителей

Поиск с исключением

find ./ -iname \*. ! -iname index. #исключаем из найденных файлов index.

Поиск по типу файла

find ./ -type l #тип символическая ссылка

find ./ -type f # тип файл, обычно используется с дополнительными условиями

find ./ -type d # тип директория

find и xargs

Ищем все файлы с расширением shtml выполняем над ними скрипт del_not_used_.py. Данный скрипт ищет картинки в найденных файлах и выводит имена файлов последний символ которого перевод строки, и выполняется для каждого имени файла команда cp, которая копирует картинки из одной папки в другую. Ключевая опция в xargs i, она выполняет заданную команду для каждой строки.

find ./ -iname \*.shtml -exec ~/sites/bin/del_not_used_img.py {} \; |xargs -i cp .../www/upload/{} upload/

В найденных файлах ищем строку linux и если есть, то выводим имя файла и через двоеточие найденную в нем строку

find ./ -iname \*.py | xargs -i grep -H linux {}

В freebsd надо вместо опции i указывать -E \n, т.е. будет так

find ./ -iname \*.py | xargs -E \n grep -H freebsd {}

Запись навигация

Top