我们使用AIX服务器来存放嵌套目录结构中成千上万个小文件。 我试图编写一个脚本,recursion删除旧文件,然后删除包含的目录,如果这是目录中的最后一个文件。
举例来说,假设任何超过60天的文件都是“旧的”。
这听起来很简单,但我已经环顾一下,找不到解决办法。 是否有一些find和它的标志的组合,也许用rmdirpipe道,将完成上述?
你说你在AIX上。 我认为如果我没有错,那么基本的shell命令将会诀窍。
find /path/to/files* -mtime +60 -exec rm {} \; find /path/to/files -type d -exec rmdir 2>/dev/null {} \;
如果您通过修改时间超过60天来定义“年龄大于”,则以下命令将删除您的旧文件:
find /your/dir -mtime +60 -exec rm -f {} \;
修剪空目录你可以使用这个命令:
find /your/dir -type d -exec rmdir {} \;
它不会完全find空目录,但是由于rmdir不会删除包含文件的目录,所以它只会删除空目录。