执行定时任务切割

CentoS 7 中设置定时任务,执行定时切割nginx日志:

定时任务书写如下:

59 23 * * * root /bin/bash /home/felix/shell/cut_api.sh

 

脚本内容如下:

#定义日志的源路径,即nginx的默认log路径
source_log_path=/home/nginx
#定义保存后的路径位置
dest_log_path=/home/felix/logs
#定义log文件的名称,以每天为单位,定义日志的前缀为昨天的日期,因为定时任务拟在凌晨零点后执行。
yesterday=$(date -d "yesterday" +%Y%m%d)
#echo ${yesterday}
#rm -rf ${dest_log_path}/*
#指定移动
/usr/bin/mv ${source_log_path}/api.log ${dest_log_path}/nginx_api_${yesterday}.log
/usr/bin/mv ${source_log_path}/oldapi.log ${dest_log_path}/nginx_oldapi_${yesterday}.log
#移动后,重新向nginx的主进程发送信息,令nginx的主进程将日志重新打开。否则日志将会继续写到mv后的路径中
/usr/bin/kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`
/usr/bin/cd ${dest_log_path}
#进入日志的路径,查询前天前的日志,然后将其删掉。
/usr/bin/find . -mtime +7 -name "*20[1-9][3-9]*" |xargs rm -rf
exit 0

查看定时任务是否正常运行。

service crond status

 

转载于:https://www.cnblogs.com/Enzoo/p/10368425.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值