實際應用: shell+定時任務+nginx信號管理,完成日誌按日期存儲
分析思路:
凌晨00:00:01,把昨天的日誌重命名,放在相應的目錄下
再USR1信息號控制nginx重新生成新的日誌文件
具體腳本:
#!/bin/bash
base_path='/usr/local/nginx/logs'
log_path=$(date -d yesterday +"%Y%m")
day=$(date -d yesterday +"%d")
mkdir -p $base_path/$log_path
mv $base_path/access.log $base_path/$log_path/access_$day.log
#echo $base_path/$log_path/access_$day.log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
定時任務
Crontab 編輯/添加定時任務
crontab -e
(每天0時1分(建議在02-04點之間,系統負載小))
01 00 * * * /usr/local/nginx/logjob.sh