linux awk命令使用实践
sh文件如下,求取最小值,平均值,最大值
#!/bin/bash
if [ -f /app/nginx/nginx-1.9.9/logs/prdaccess.log ]; then
awk '{if($7~"/api/")print}' prdaccess.log > one.txt
awk '($NF>0.2){print}' one.txt > two.txt
awk '{if($7~"/api/")split($7,a,"?");print a[1]FS$NF}' two.txt > three.txt
awk 'BEGIN {printf "%s,%5s,%4s\n","API","AVG","MAX"}{A[$1]++;SNF[$1]+=$NF;MAXNF[$1]=($NF>MAXNF[$1]?$NF:MAXNF[$1])}END{for (API in A) print API,SNF[API]/A[API],MAXNF[API]}' three.txt > last_api.txt
rm -f one.txt
rm -f two.txt
rm -f three.txt
else
echo "not have file"
fi
#end
数据库