Поиск по сайту:

Как найти или удалить файлы возрастом менее X минут в Linux


Скажем, вы только что запустили какой-то скрипт, который должен был перемещать файлы, загружать что-то или что-то еще, связанное с файлами, и затем вы понимаете, что вам нужно выяснить, какие файлы только что были созданы и где. И, возможно, вам нужно удалить их.

Сначала вы захотите использовать команду find, чтобы выяснить, какие файлы были созданы, а затем использовать аргумент mmin, чтобы указать файлы менее x минут. Если вы хотите указать только файлы, вы можете использовать аргумент -type f, чтобы проверять только файлы.

Поэтому, если вы хотите проверить текущую папку, включая подпапки, на наличие файлов, созданных за последние 5 минут, вы можете использовать следующую команду:

find ./ -type f -mmin -5

Для удаления файлов мы можем использовать аргумент -exec rm {} ;, что немного сбивает с толку, но в основном вы указываете аргументу exec удалить файлы.

Итак, чтобы удалить все файлы в текущей папке, включая подпапки, созданные за последние 5 минут, используйте эту команду:

find ./ -type f -mmin -5 -exec rm {} ;

Если вы хотите вместо этого указать файлы старше X дней, вы можете использовать аргумент -mtime — например, эта команда удалит файлы старше 10 дней:

find ./ -type f -mtime +10 -exec rm {} ;

Гораздо проще, чем смотреть на справочную страницу.