我創建了這樣的資料夾:
$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
))。
答案1
首先運行它以確保它獲得所需的目錄
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 {} \;