Автоматическое удаление файлов из каталога в Линуксе

Если вы предоставляете сервис для работы с файлами, то вам вероятнее всего понадобится проводить очистку каталога, для этого очень хорошо подходит утилита find, с её помощью можно в одну строчку удалить старые файлы, достаточно поставить её в планировщик заданий:

find /test/ -mtime +30  -delete;

Основной упор делается на параметр «-mtime» — он как раз и указывает время, в данном случае указано 30 дней. Т.е. файлы в каталоге будут храниться ровно 30 дней, а затем — удалятся.

Так же вы можете задать время в минутах, для этого можно модифицировать команду:

find /test/ -mmin +30  -delete;

В данном случае файлы будут удаляться через 30 минут после создания и запуска скрипта.

Так же иногда возникает необходимость удалять пустые каталоги, в этом случае скрипт будет выглядеть так:

find  /test/ -type d -empty -delete;