1、删除5天前的文件
find /apps/svr/jenkins_bak/* -mtime +5 -exec rm -rf {} \;
2、保留最新的5个
ls -1t /apps/svr/jenkins_bak/deerma_aliiot/* | awk 'NR>5 {print "rm -f "$0}' | bash
3、前两条结合起来:文件大于5个,删除5天前文件
find /apps/svr/jenkins_bak/deerma_aliiot/* -mtime +5 | awk 'NR>5 {print "rm -f "$0}' | bash
4、优化,按文件夹删除
find /web/logs/deerma_schedulerx/* -mtime +3 -name "*" | awk '{print "rm -rf "$0}' | bash
5、优化,限定文件类型为文件夹,且数量大于3
find /web/logs/*/* -name "*" -type d | awk 'NR>3 {print "rm -rf "$0}' | bash
6、注意事项: 进行 NR 数量判断的时候条件对比
(1)最后*目录的符合条件数量
find /web/logs/*/* -name "*" -type d | awk 'NR>3 {print "rm -rf "$0}' | bash
(2)包含二级*目录的符合条件数量
find /web/logs/*/* -name "*" -type f | awk 'NR>3 {print "rm -rf "$0}' | bash
注意:本文归作者所有,未经作者允许,不得转载