Как удалить файлы старше 30 дней в Linux

Регулярная очистка старых неиспользуемых файлов с вашего сервера является лучшей практикой. Например, если мы ежедневно/ежечасно выполняем резервное копирование файлов или баз данных на сервере, то на сервере будет создаваться много мусора. Поэтому регулярно очищайте его. Для этого вы можете найти старые файлы в каталоге резервного копирования и очистить их.

В этой статье описано, как найти и удалить файлы старше 30 дней. Здесь 30 дней старше означает, что дата последней модификации предшествует 30 дням.

Удаление файлов старше 30 дней

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

Прежде всего, перечислите все файлы старше 30 дней в каталоге /opt/backup.

Проверьте список файлов и убедитесь, что в приведенной выше команде нет ни одного полезного файла. Убедившись в этом, можно удалить эти файлы с помощью следующей команды.

Удаление файлов с определенным расширением

Вы также можете указать дополнительные фильтры для поиска команд вместо удаления всех файлов. Например, можно удалять только файлы с расширением ".log" и измененные до 30 дней.

Для надежности сначала выполните пробный запуск и выведите список файлов, соответствующих заданным критериям.

Когда список будет проверен, удалите эти файлы, выполнив следующую команду:

Приведенная выше команда удалит только файлы с расширением .log и с датой последней модификации более 30 дней.

Рекурсивное удаление старого каталога

Опция -delete может не сработать, если каталог не пуст. В этом случае для удаления мы будем использовать команду Linux rm с командой find.

Выполните поиск всех каталогов в каталоге /var/log, измененных до 90 дней, с помощью следующей команды.

Здесь мы можем выполнить команду rm, используя опцию командной строки -exec. Выходные данные команды find будут отправлены команде rm в качестве входных данных.

Перед удалением каталога убедитесь, что не удаляется каталог пользователя. Иногда даты модификации родительского каталога могут быть старше, чем дочерних каталогов. В этом случае рекурсивное удаление может удалить и дочерний каталог.

Заключение

Вы узнали, как найти и удалить файлы в командной строке Linux, которые были изменены более определенного количества дней назад. Это поможет вам очистить систему от нежелательных файлов.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий