ngixn日志合并脚本
#!/bin/bash
#定义变量
#定时时间变量
DAY=$(date -d "-1 days" +%Y%m%d)
#定义未切割前的Nginx目录
NGINX_LOG_PATH="/data/vim26.com/backup/nginx"
#定义每个主机当天保存的目录
PATH_100="${NGINX_LOG_PATH}/192.168.56.100/${DAY}"
PATH_101="${NGINX_LOG_PATH}/192.168.56.101/${DAY}"
PATH_102="${NGINX_LOG_PATH}/192.168.56.102/${DAY}"
PATH_103="${NGINX_LOG_PATH}/192.168.56.103/${DAY}"
#定义日志列表
LOG_LIST="${NGINX_LOG_PATH}/list.txt"
#定义合并后的目录名
ALL_LOG_PATH="${NGINX_LOG_PATH}/all_log/${DAY}"
#创建合并目录
mkdir -p ${ALL_LOG_PATH}
#循环读取日志列表
for list in $(cat ${LOG_LIST})
do
#将每个主机下目录下相同的日志排序并合并输出到新的目录
sort -k4 -t" " -m \
${PATH_100}/${list} \
${PATH_101}/${list} \
${PATH_102}/${list} \
${PATH_103}/${list} \
-o ${ALL_LOG_PATH}/${list}
done
最后更新于