mtime каталога может быть более старым, чем mtime файла внутри?

У меня есть этот очень глупый и очень простой вопрос, но я передумал для выяснения, прежде чем я начну сокращать свой NAS.

Я хочу удалить все каталоги, в которых все файлы являются более старыми, чем 30 дней.

Для файлов я, возможно, сделал:

find /path/to/files* -mtime +30 -exec rm {} \;

Но это привело бы к пустым папкам в некоторых местах. Таким образом, я думал, чтобы скорее удалить все папки с -mtime +30 но я не уверен если mtime из папки гарантирует mtime порог для него sub папки и файлы.

Кроме того, если, что я, думают, является правильным, какова была бы команда для того же?

1
задан 22 November 2014 в 22:01

1 ответ

На Linux время изменения каталога изменяются если Вы:

  • добавляют, что новый файл
  • удаляет существующее файл
  • или переименовывает файл в нем

при изменении содержания существующего файла это не отражается до каталога.

из-за этого, я предлагаю использовать эти команды:

    find /path/to/folder -type f -mtime +30 -delete

эта команда удаляет рекурсивно файл, более старый, чем 30 дней, и сохраняет папку.

    find /path/to/folder -type d -empty -delete

это удаляет пустой каталог если таковые имеются.

Источник:

Каталог длится измененную дату

, Как я удаляю все пустые каталоги в каталоге из командной строки?

2
ответ дан 11 November 2019 в 09:29

Другие вопросы по тегам:

Похожие вопросы: