我想删除x天的.tar
&使用cronjob的.sql
个文件。
我尝试了多个命令但它没有用。
命令,如,
find /path/to/files -type f -mtime +10 -delete
find /path/to/folder -name '*.sql' -mtime +30 -delete
find "$FILEDIR" -mtime +14 -delete
[[ $FILEDIR == /home/abc/* ]] && find "$FILEDIR" -mtime +14 -delete
以上命令运行完美但不删除任何内容。 需要帮助。
答案 0 :(得分:0)
我使用for循环和echo语句进行调试,并确保我不会错误地删除任何内容。
所以试试这个:
for filename in `find /path/to/files -type f -mtime +10`; do echo "rm $filename"; done
这将列出它打算做什么。检查它,确保它看起来不错,然后通过删除echo语句
运行for filename in `find /path/to/files -type f -mtime +10`; do rm $filename; done
如果它不起作用,那么您可以将上述内容输出到文件并将其作为脚本运行
for filename in `find /path/to/files -type f -mtime +10`; do echo "rm $filename"; done > myremove.sh
然后运行它
sh -x ./myremove.sh
并检查上面的输出是否有错误。
一旦你没有bug,你可以将cron添加为单个命令或脚本