方法:将rm命令替换为mv,结合crontab定期执行。
首先在特定目录新建要删除文件的存放目录,例如 /trash
之后
vim ~/.bashrc
行尾增加以下内容:
alias rm=trash
trash()
{
mv --backup=t $@ /trash/
}
之后source ~/.bashrc
新建存放清理垃圾的脚本
vim clear_trash.sh
输入以下内容:
echo $(date +%Y-%m-%d_%H:%M:%S) 'Begin_trash'
/usr/bin/find /trash -maxdepth 2 -ctime +7 -exec /usr/bin/rm -rf {} \; #crontab 执行脚本需要绝对路径 ,根据需要删除文件时间不同,需要更改-ctime -mtime 等等,具体可以搜索 ctime mtime 的区别
echo $(date +%Y-%m-%d_%H:%M:%S) 'End_trash'
之后输入
crontab -e
# 前五个字段分别表示:分钟 小时 一个月份中的第几日 月份 一个星期中的第几天 执行之后的脚本。
30 2 * * * /bin/bash $obspath/clear_trash.sh >> /trash.log 2>&1 # 注意使用绝对路径
完成
网友评论