我的备份存储在文件夹中。例如
**05092013** >
- File1.sql
- File2.sql
- File1.tar
- File2.tar
等等。
现在我想删除所有早于 X 天的文件夹。
我试过了
find $FILEDIR -mtime +14 -exec rm {} \;
但它只删除所有文件,而不删除文件夹。如何删除所有较旧的文件和文件夹?
有人可以帮助我吗?
提前感谢 cSGermany
最佳答案
使用-r
?
查找“$FILEDIR”-mtime +14 -exec rm -ir {}\;
如果您知道自己在做什么,请将 -ir
更改为 -r
。
或者使用-delete
:
find "$FILEDIR" -mtime +14 -delete
但是请确保你知道自己在做什么。
您也可以添加这样的检查,以确保 $FILEDIR 始终位于您的主目录中的某个位置:
[[ $FILEDIR == /home/abc/* ]] && find "$FILEDIR" -mtime +14 -delete
关于linux - 使用 Shell 删除所有早于 X 天的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18636572/