linux查找超过一定时间的文件,并批量删除
1、find . -maxdepth 4 -name "*-*" -mtime 3
-maxdepth的值决定是否对下面的子目录进行递归查找
-mtime 3表示查找刚好3天的;-mtime +3表示查找超过3天的,也就是查找3天前的文件;-mtime -3表示查找3天内的,最近3天内的
2、find . -maxdepth 4 -name "*-*" -mtime 3 | sudo xargs rm -rf 删除第3天的
3、排除某些目录:
find . -maxdepth 4 -name "*-*" -mtime 3 ! -path /var/lib/jenkins/jobs | sudo xargs rm -rf
可以给jenkins加一个定时任务,定期删除/var/lib/jenkins/jobs下面的task,减少磁盘占用
find ${JENKINS_HOME}/jobs -maxdepth 1 -name "*" -mtime +60 ! -path /var/lib/jenkins/jobs | xargs rm -rf; echo "删除2个月之前的数据成功!"