1.脚本 nginx_log.sh
#!/bin/bash #nginx安装地址 BASE_PATH=/usr/local/nginx #日志文件名称 TARGET_LOG_FILENAME=access.log #写出的文件夹地址 OUT_PATH=/usr/local/nginx/logs/backup_log #当文件夹不存在就创建 if [ ! -d "$OUT_PATH" ]; then mkdir $OUT_PATH fi #根据日期来创建日志文件的名称,这个是按照月进行分割 NEW_LOG_FILENAME=$(/bin/date -d yesterday +%Y_%m) #这个是按照分钟 #/bin/date -d yesterday +%Y%m%d%H%M #2020_01_access.log 日志 OUT_PATH_FILENAME=$NEW_LOG_FILENAME"_"$TARGET_LOG_FILENAME #停止nginx $BASE_PATH/sbin/nginx -s stop echo "创建日志文件" $NEW_LOG_FILENAME echo $OUT_PATH/$OUT_PATH_FILENAME #移动日志文件 mv $BASE_PATH/logs/$TARGET_LOG_FILENAME $OUT_PATH/$OUT_PATH_FILENAME touch $BASE_PATH/logs/$TARGET_LOG_FILENAME #启动nginx日志 $BASE_PATH/sbin/nginx
2.任务计划 crontab -e
0 0 1 * * /bin/sh /usr/local/nginx/logs/nginx_log.sh > /dev/null 2>&1 &