Я хотел бы запустить ночное задание cron, которое удаляет все файлы в папке, к которым не было доступа в течение недели или более. Какой самый эффективный способ сделать это в bash?
shell-script
files
cron
date
bloudermilk
источник
источник
find
может фильтровать по времени. «Правильность» atime зависитnoatime
как минимум от конфигурации (см. ).Ответы:
Вы хотите
find
инструмент .(Это будет удалить все файлы ( только регулярные те , ни трубы, специальные устройства, каталоги, символические ссылки) в данной папке и все подкаталоги (рекурсивно) , где последний раз доступа является больше чем 7 дней назад.)
источник
-type f
туда, чтобы убедиться, что он удаляет только файлы, а не целые каталоги.Вы можете проверить,
tmpwatch
какие из них можно использовать в работе cron. Не нужно кататься самостоятельноfind
. На RHEL это вtmpwatch
RPM.источник
find
.