1 腳本 vim cut_www.tangboxiang.com.log.sh
#!/bin/bash
LOGDIR=/www/wwwlogs
LOGNAME=www.tangboxiang.com
DATETIME=$(date -d "yesterday" +%Y-%m-%d)
mv ${LOGDIR}/${LOGNAME}.log ${LOGDIR}/${LOGNAME}_${DATETIME}.log
kill -USR1 `ps -ef|grep nginx |awk '/master/ {print $2}'`
#刪除2天前的日誌
find ${LOGDIR}/ -mtime +2 -name "*.log" | xargs rm -rf
exit 0
2 加入到定時任務,由於時間設置yesterday,定時任務裏面爲0點以後。
crontab -e
0 0 * * * /bin/sh /www/wwwlogs/cut_www.tangboxiang.com.log.sh > /dev/null 2>&1
3 重啓crontab
坑:修改時區後,必須要重啓crontab(重啓系統也沒有用),否則crontab 執行時間和系統時間不一致,導致切割的時間和執行的時間不對。
還有一種情況的 時區分兩個 一個是 timezone 還有個是localtime,按照下面命令即可解決
cp
/usr/share/zoneinfo/Asia/Shanghai
/etc/localtime
service crond restart
systemctl restart crond
service crond start //啓動服務
service crond stop //關閉服務
service crond restart //重啓服務
service crond reload //重新載入配置
service crond status //查看服務狀態