Команда find в Linux: как найти файл по имени, размеру и дате
find перебирает папки и показывает файлы, которые подходят под условия: имя, размер, дата изменения. Так находят wp-config.php, большие файлы, из-за которых кончилось место, и файлы, которые поменялись за последний час.
Содержание 9
Что сделать прямо сейчас
- Подключитесь к серверу — инструкция.
- Найдите файл по имени:
sudo find /var/www -name 'wp-config.php'. - Найдите большие файлы:
sudo find /var -type f -size +100M. - Найдите, что менялось за последний час:
sudo find /var/www -type f -mmin -60. - Чтобы удалить найденное, сначала посмотрите список и только потом добавьте
-deleteв конец — как это делать.
Как устроена команда
find /var/www -type f -name '*.php'| Часть | Что значит |
|---|---|
find | команда |
/var/www | где искать: find зайдёт и во все вложенные папки |
-type f | условие: только файлы |
-name '*.php' | условие: имя заканчивается на .php |
Если не указать, где искать, find ищет в текущей папке. Все условия должны выполниться сразу. Шаблон имени берите в кавычки — иначе bash подставит вместо *.php файлы из текущей папки, и find получит не то.
Условия поиска
| Условие | Что найдёт |
|---|---|
-name 'wp-config.php' | файл с точно таким именем |
-name '*.log' | имена, которые заканчиваются на .log |
-iname 'readme*' | то же без учёта больших букв: README, Readme, readme |
-type f | только файлы |
-type d | только папки |
-size +100M | больше 100 МБ (M — мебибайты, k — кибибайты, G — гибибайты) |
-size +1G | больше 1 ГБ |
-mmin -60 | менялись меньше 60 минут назад |
-mtime -1 | менялись меньше суток назад |
-mtime +7 | менялись больше недели назад |
-empty | пустые файлы и папки |
-user ivan | файлы пользователя ivan |
-maxdepth 1 | не заходить во вложенные папки глубже первого уровня |
Плюс значит «больше», минус — «меньше», число без знака — «ровно». Размер find округляет вверх, а дни считает целыми сутками, отбрасывая остаток. Поэтому -mtime +7 найдёт файлы, которые не менялись восемь суток и дольше.
Примеры для сервера
| Задача | Команда |
|---|---|
| Где лежит конфиг WordPress | sudo find /var/www -name 'wp-config.php' |
| Что занимает место | sudo find / -xdev -type f -size +500M |
| Что менялось за час | sudo find /var/www -type f -mmin -60 |
| Старые архивы копий | find ~/backup -name '*.tar.gz' -mtime +30 |
| Файлы только в этой папке | find . -maxdepth 1 -name '*.log' |
| Папки с конфигами nginx | find /etc/nginx -name '*.conf' |
Ключ -xdev не даёт find уходить на другие диски и в служебные файловые системы вроде /proc. Если место на диске кончилось, разбор по шагам — No space left on device.
Строки Permission denied
find заходит во все папки подряд, и в те, что вашему пользователю закрыты, тоже. На каждую такую папку он выводит строку со словами Permission denied. Есть два способа:
- запустить с
sudo— тогда find сможет зайти и туда; - спрятать сообщения об ошибках, дописав
2>/dev/nullв конец.
find / -name 'wp-config.php' 2>/dev/null2>/dev/null прячет все сообщения об ошибках, а не только эти. Если find ничего не нашёл, запустите команду без этой приписки и прочитайте, что он пишет.
Как удалить найденные файлы
Ключ -delete удаляет всё, что нашлось, без вопросов и без корзины. Делайте в два шага:
- Запустите поиск без удаления и прочитайте список:
find ~/backup -name '*.tar.gz' -mtime +30. - Если в списке только то, что не жалко, добавьте
-deleteв самый конец той же команды:find ~/backup -name '*.tar.gz' -mtime +30 -delete.
Ставьте -delete только последним. find читает команду слева направо, и -delete в начале удалит всё в папке поиска, не глядя на условия. Папки -delete удаляет, только если они пустые.
Как настроить, чтобы старые копии удалялись сами, — Резервные копии сайта.
Команда для каждого найденного файла
-exec запускает другую команду с найденными файлами. На место {} find подставит имена, а + в конце собирает их в один запуск:
find . -name '*.log' -exec ls -lh {} +Так меняют права сразу у всех папок или всех файлов сайта — примеры в статье Команда chmod.
Источники
- Справка find для Ubuntu 24.04 — условия -name, -iname, -type, -size, -mtime, -mmin, -maxdepth и действия -delete и -exec.
Сверено 11 октября 2026 года.
Что почитать дальше
- Команда grepнайти текст внутри файлов.
- No space left on deviceнайти, что заняло место.
- Команда chmodпоменять права у найденных файлов.
- Команды Linux для новичкашпаргалка по командам.
Проверено и обновлено: 11.10.2026