- 1.png
- 最近需要查看一下记录里的信息,发现监控服务器产生日志文件很久没有清理了,都1.6G了
- 截图时间7月21日12点41分一共421个文件
- 日志文件倒是无伤大雅,毕竟我备份服务器的磁盘还是很大的
- 2.png
- 主要是监控服务器的日志已经实时备份到备份服务器了
- 如果储存两份相同(实际上是四个,这是其中一个监控记录,还有数据监控)的日志完全没有必要
- 按照我需要的文件记录,监控服务器默认储存30天就行了,毕竟所有记录备份服务器已经拷贝了一份数据
- 防止突发情况,比如备份服务器出问题等,还可以通过监控服务器查询日志
- 我们只要在写一个shell的脚本进行循环执行就行了
- 当然你也可以用Crontab程序进行定时执行,我相信不少人liunx上都写了不少脚本吧
- 以下我写死循环的一个脚本
- 3.png
- 例子
#!/bin/sh echo "【〔乔安[监控记录]〕删除30天前的备份量】" find /media/buyan/1/脚本监控/监控记录/ -type f -mtime +30 -exec rm -rf {} \; echo "【〔乔安[监控记录]〕删除完成】"
- find说明
/media/buyan/1/脚本监控/监控记录/ 是查找文件的路径 -type f 是指文件类型为普通文件 -mtime +30是指修改时间距离现在30天的文件 -30是指修改时间距离现在不足30天的文件 -exec rm -f 删除匹配出来的文件,并且不输出(注意:在结尾需要加入 {} \;) -name 按照文件名查找 -perm 按照文件权限来查找文件 -size 按文件的大小查找文件的 -exec 匹配出来的文件再执行命令
- find报错
find: paths must precede expression Usage: find [-H] [-L] [-P] [path...] [expression]
- 在centos中,查找多文件需要加单引号find ./ -mtime +30 -type f -name '*.txt'
- find: missing argument to `-exec'
- 原因是在结尾需要加入;就可以了
【linux删除过期文件(find指令参数介绍,报错说明)】
qaq卟言2021-07-24 17:55:08
Linux
开始
完结