Я создал такую папку :
$folder_name=`date "+%Y%m%d"`
$mkdir -p ${DIR_LOG}/${folder_name}
Пример имени папок: [20160622]
, [20160621]
... и т. Д.
Теперь мне нужно найти эти папки и удалить их (папки не пустые), если они старше на 3 месяца.Я пытался сделать это:
find ${DIR_LOG}/* -name "*.${folder_name}" -type d -mtime +90 -exec rm -rf {} \;
Это удаляет только папки с текущей датой, а не другие папки, такие как ( 20160621
).
Сначала запустите это, чтобы убедиться, что он получает требуемый каталог
find ${DIR_LOG} -type d -mtime +90 -name "20[0-1][0-9][0-9][0-9][0-9][0-9]"
, затем запустите его, чтобы фактически удалить их.
find ${DIR_LOG} -type d -mtime +90 -name "20[0-1][0-9][0-9][0-9][0-9][0-9]" -exec rm -Rf {} \;