我需要删除目录中超过 2 年的所有文件。保留最新文件并删除旧文件非常重要。
我已经搜索并找到了这个。
find /path/to/files* -mtime +365 -exec rm {} \;
我可以乘以这个数字吗?
find /path/to/files* -mtime +1095 -exec rm {} \;
有没有办法添加一个开关,在删除文件时将文件名打印到屏幕上?以确保它正在做我期望的事情?
我还发现了这个:
find /rec -mtime +365 -print0 | xargs -0 rm -f
这两者有很大区别吗?这个比那个好吗?我读过的内容说 xargs 更快。我能否将 mtime 数乘以第 2 年或第 3 年?
最后,我能否将代码原样放入每天运行的 cron 作业中?
谢谢!
最佳答案
Can I just multiply the number?
find /path/to/files -mtime +1095 -exec rm {} \;
是的。并在删除之前“回显”
find /path/to/files -mtime +1095 -print
然后使用 -exec rm {}\;
删除文件的版本(当您准备好时)。
关于linux - 删除超过 3 年的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28534621/