我的要求与这个问题几乎相同:Shell script to delete directorys older than n days 我的目录如下所示:
Jul 24 05:46 2013_07_24
Jul 31 22:30 2013_08_01
Sep 18 05:43 2013_09_18
Oct 07 08:41 2013_10_07
我想删除任何超过 90 天的内容。基于上述线程中给出的解决方案,我在脚本中使用了以下内容:
find $BASE_DIR -type d -ctime +90 -exec rm -rf {} \;
该脚本已成功删除目录,但也因以下错误而失败:
find: 0652-081 cannot change directory to <actual_path>:
: A file or directory in the path name does not exist.
这里唯一 $BASE_DIR 指向的位置是虚拟位置,错误消息中的 actual_path 指向实际位置。环境中有软链接。