为了方便定位问题,一般会打开日志记录,但运行一段时间后日志特别大,希望能定期清理,比如只保留近三天的日志。
新建清理脚本
新建一个shell脚本,clear_up_log.sh,内容如下,对应需要清理的日志路径
其实利用的是Linux的文件覆盖命令 cp /dev/null xxx.log,但直接执行这个命令需要用户手动确认,稍微修饰一下就可以不用确认执行。
yes | cp /dev/null nohup.out
赋予该脚本执行权限
chmod 777 clean_up_log.sh
新建定时任务
编辑crontab
vi /etc/crontab
定时语法规则
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
添加一个定时任务,定时任务的语法规则是 分 时 日

本文介绍了如何创建一个shell脚本`clear_up_log.sh`,用于清理超过三天的日志文件,以避免日志过大。通过在Linux的crontab中设置定时任务,实现定期执行清理,确保系统运行不受影响。同时,文中提到了解决定时任务执行不成功的问题,如环境变量和脚本路径等。
最低0.47元/天 解锁文章
474

被折叠的 条评论
为什么被折叠?



