1. 程式人生 > >SHELL腳本:將新增的行添加到另一個文件中

SHELL腳本:將新增的行添加到另一個文件中

shell

#!/bin/bash
cd /usr/local/logstash/nginxlog
[ -f num.txt ] || count=0
[ -f num.txt ] && count=cat num.txt
ncount=wc -l /var/log/nginx/access-app.log | awk ‘{print $1}‘
echo $ncount > num.txt

for ((i=$count+1;i<=$ncount;i++))
do
num=$[i]p
log=sed -n $num /var/log/nginx/access-app.log
tapi=echo $log | awk ‘{print $9}‘ | awk -NF ? ‘{print $1}‘


oapi=echo $tapi | sed ‘s?//?/?‘
if egrep "($oapi)$" api.txt > /dev/null 2>&1; then
napi=`egrep "
($oapi)$" api.txt`
echo $log | sed s?$tapi?$napi?g >> access-app-elk.log
else
echo $log >> access-app-elk.log
fi
done

SHELL腳本:將新增的行添加到另一個文件中