🧹 Як видалити файли за датою створення у 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
— створення/імітація файлів для тестування