如何删除超过一小时的目录(cron 作业)

Pon*_*ono 3 bash cron

当用户执行某些操作时,我的应用程序会创建目录。这些目录在我的机器上存储了整整一个小时,然后被删除。

现在我想将应用程序的“删除逻辑”部分移动到每分钟运行一次的 cron 作业中。

假设要删除的目录位于/tmp/files/. 该脚本应检查此路径中的所有目录并删除一小时前创建的所有目录。

任何帮助,将不胜感激。

提前致谢!

** 已解决**

这将解决问题:

find ./* -mmin +60 -type d -exec rm -rdf {} \;
Run Code Online (Sandbox Code Playgroud)

dog*_*ane 5

您不应该使用,find ./*因为这会导致 shell 在调用之前扩展通配符,find如果文件太多,这将失败。

相反,您需要"./*"像这样传递给 find 命令:

find . -type d -path "./*" -mmin +60 -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)