bash删除较旧的文件

我有这个独特的要求,find2年以前的文件,并删除它们。 但不仅是文件以及相应的空目录。 我已经写了大部分的逻辑,但只有仍然悬而未决的是,当我从一个目录中删除特定的文件时,如何删除相应的目录,当它是空的。 当我删除特定的文件时,ctime / mtime也会相应地得到更新。 我如何定位那些相应的旧目录并删除它们? 任何指针都会有所帮助。 提前致谢。

  • pipe理员

我会做这样的事情:

 find /path/to/files* -mtime +730 -delete 

-mtime +730找到超过730天的文件。

请注意这种命令,但一定要事先写下find /path/to/files* -mtime +730并检查这些是你想删除的文件!

编辑:现在你已经从目录中删除了文件, -mtime +730将无法正常工作。 要删除最近更改的所有空目录:

 find . -type d -mmin -60 -empty -delete