Як видалити файли за датою створення у Linux: find у дії

🧹 Як видалити файли за датою створення у Linux: find у дії

Коли накопичується багато файлів, створених певного року або місяця, постає питання: як ефективно видалити лише ті, що нам вже не потрібні? У цій статті я покажу, як видалити файли за датою створення або зміни в Linux за допомогою команди find, і поділюсь добіркою практичних прикладів для щоденного використання.


🎯 Приклад: видалити всі файли, створені у 2024 році

find . -maxdepth 1 -type f -newermt 2024-01-01 ! -newermt 2025-01-01 -exec rm -v {} \;

Що робить ця команда:

  • . — поточна директорія
  • -maxdepth 1 — без рекурсії в підкаталоги
  • -type f — лише файли
  • -newermt — знайти файли, змінені після (mt = modification time)
  • ! -newermtне пізніше вказаної дати
  • -exec rm -v {} \; — видалити кожен знайдений файл з виводом у термінал

🔎 Спочатку перевір, що буде видалено

Щоб уникнути помилок, перш ніж видаляти файли, варто перевірити список кандидатів:

find . -maxdepth 1 -type f -newermt 2024-01-01 ! -newermt 2025-01-01

🧰 Інші корисні приклади з find

1. Видалити всі файли старші за 30 днів у поточній папці:

find . -maxdepth 1 -type f -mtime +30 -exec rm -v {} \;

2. Видалити всі .log файли, створені в березні 2024:

find . -type f -name "*.log" -newermt 2024-03-01 ! -newermt 2024-04-01 -exec rm -v {} \;

3. Видалити всі пусті файли в поточному каталозі:

find . -maxdepth 1 -type f -empty -exec rm -v {} \;

4. Видалити всі файли у всіх підкаталогах, які старші за 90 днів:

find . -type f -mtime +90 -exec rm -v {} \;

5. Видалити всі великі файли (більше 100MB):

find . -type f -size +100M -exec rm -v {} \;

🔐 Порада: безпечна альтернатива перед видаленням — mv замість rm

Можна замість видалення перемістити файли в тимчасову папку для перевірки:

mkdir -p ~/trash_test
find . -type f -newermt 2024-01-01 ! -newermt 2025-01-01 -exec mv -v {} ~/trash_test/ \;

✅ Висновки

Команда find — це швейцарський ніж для керування файлами в Linux. Вона дозволяє видаляти, переміщувати, шукати файли за десятками параметрів: дата, розмір, тип, маска імені, права доступу тощо. Використовуючи її обережно та з перевіркою, ви зможете навести лад у файловій системі без ризиків.


🔗 Корисні посилання:

  • man find — докладна документація
  • touch -t YYYYMMDDhhmm — створення/імітація файлів для тестування

Залишити відповідь