find — утилита поиска файлов, используемая в
UNIX‐подобных
операционных системах. Может производить поиск в одной или нескольких
директориях с использованием критериев, заданных
пользователем. По умолчанию,
find возвращает все
файлы после текущего в рабочей директории. Более того,
find позволяет применять пользователю определённые действия ко всем найденным файлам. Также поддерживаются
регулярные выражения.
Список ключей
-name — искать по имени файла, при использовании подстановочных образцов параметр заключается в кавычки.
-type — тип искомого: f=файл, d=каталог, l=связь (link).
-user — владелец: имя пользователя или UID.
-group — владелец: группа пользователя или GID.
-perm — указываются права доступа.
-size — размер: указывается в 512-байтных блоках или байтах (признак байтов — символ «c» за числом).
-atime — время последнего обращения к файлу.
-ctime — время последнего изменения владельца или прав доступа к файлу.
-mtime — время последнего изменения файла.
-newer — искать файлы созданные позже указанной даты.
-delete — удалять найденные файлы.
-ls — генерирует вывод как команда ls -dgils.
-print — показывает на экране найденные файлы.
-exec command {} \; — выполняет над найденным файлом указанную команду; обратите внимание на синтаксис.
-ok — перед выполнением команды указанной в -exec, выдаёт запрос.
-depth — начинать поиск с самых глубоких уровней вложенности, а не с корня каталога.
-prune — используется, когда вы хотите исключить из поиска определённые каталоги.
Примеры
Команда
find / -newerct '1 minute ago' -print
выведет список файлов во всей файловой системе, изменённых в течение последней минуты.