shell 删除目录下备份目录数量
前言
经常需要通过脚本来控制系统目录的里备份文件数量。不可能手动来经常查看,总是忘记。
通过脚本定期自己查看目录里的文件数据,删除时间较早的目录。
实现
那么就要设置几个条件:
- 允许存在几个目录
- 超过了怎么删除
怎么判断目录下有多少个目录?
用ls
就可以。
那多出来的怎么删除?
遍历删,直到没有为止
完整代码如下:
1 | !/bin/bash |
过滤目录,d 表示目录
grep "^d"
制造一些测试数据,然后执行上面的脚本验证。
1 | mkdir test1 test2 test3 |
最后一个问题,什么时候来执行呢?
这个就看具体的策略了,可以定时执行如:crontab
,如果装了监控应用如zabbix
那就可以通过客户端来执行。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人话翻译机!
评论