清理日志的脚本文件(py后缀)编写
程序员文章站
2022-05-12 21:08:47
...
一个清理日志的脚本文件编写
linux的服务器运行服务的时候会产生日志文件,如果不管日志文件那么就会占用空间,长期下去会导致服务器空间不够,我们应该把不必要的文件进行删除
一般配合着定时脚本去处理,比如每天1点的时候启动清理服务,清除不需要的日志,以下就是做的步骤
步骤:
1.编写一个py脚本(python脚本),命名为log_clean.pymkdir log_clean.py
2.在py脚本(python脚本)中添加如下:
#!/bin/sh
find /path1/path2 -mtime +1 -name "log_*" -exec rm -rf {} \;
# find 查询
# /path1/path2/ 要清理的log路径
# -mtime +1 查找距离当前1天之前的 如果是 1 就是 距离当前时间正好一天的 如果是 -1 距离当前时间是一天之内的
# -exec 指找到后 执行命令 后面跟具体的命令
# rm -rf{} 删除命令
# \;这是格式要求的,没有具体含义。
3 .保存
:wq
这样脚本写好了,需要但是需要让它定时启动这时候需要使用定时器了
4 .查看定时器任务
crontab -l # 查看定时器任务
5 .编写定时器任务
crontab -e # 编写定时器任务
6 .把这个写好的删除log的py脚本放到定时器脚本中
0 1 * * * /path1/path2/log_clean.py #每天一点整 执行path1/path2/下的log_clean.py脚本
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,
格式为: minute hour day month week command
它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
比如 0 1 * * * /path1/path2/log_clean.py 对应的就是 0 分钟 1 点 执行/path1/path2/log_clean.py命令
可以通过下图理解: