Linuxlab

Команда find в Linux: поиск файлов

Обновлено 3 июля 2026 г.

Команда find рекурсивно обходит дерево каталогов и находит файлы по имени, типу, размеру или времени.

Синтаксис

find [путь] [условия] [действия]

Первый аргумент - где искать. Дальше идут условия, и find проверяет их слева направо для каждого файла.

Частые случаи

find . -name "*.log"        # по имени, с конца текущего каталога
find . -type d               # только каталоги
find . -size +10M            # файлы больше 10 мегабайт
find . -mtime -1             # изменённые за последние сутки
find . -name "*.tmp" -delete # найти и удалить

Как это устроено: условия и -exec

-name сопоставляет только имя файла, а не весь путь, и понимает шаблоны * и ? (кавычки нужны, чтобы шаблон раскрыл find, а не оболочка). Действие -exec команда {} \; запускает команду для каждого найденного файла, подставляя путь вместо {}.

Попробовать

Открой песочницу: это настоящий одноразовый терминал Linux в браузере. Выполни команды выше своими руками. Контейнер удаляется, когда ты уходишь, поэтому ломать ничего не страшно.

Где это в учебнике: глава Файлы и каталоги.