、、、nginx
cat access_log20181130.log |grep getLifeInfo|awk '{print $7, " ",$0}' | sort -nr | head -10spring
cat access_log20181130.log |grep getLifeInfo| wc -l排序
查询状态>200 grep "/test/testUrl" /wls/nginx-1.14.0/logs/host.access.log |awk '$10>200{print $10 " " $0}' |head接口
cat access_log20181224.log|grep '/test/testUrl' |awk 'BEGIN{maxv=-1;minv=444}{if($3>maxv)maxv=$3;if($3<minv)minv=$3;count++;sum+=$3} END {print minv,maxv,"avg is ", sum/count}'get
cat access_log20181224.log|grep '/test/testUrl' |awk '{count++;sum+=$3} END {print "avg is ", sum/count}'test
过滤重复列 cat spring.log |grep 'params:mobilePhone=' |awk '$2>="11:10" && $2<="12:40" {print $0 }' | head -10 |awk '{print $11}'|awk -F ',' '{print $3}' |sort -uawk
过滤重复列而且统计次数 cat */spring.log |grep 'params:mobilePhone=' |awk '$2>="11:10" && $2<="12:40" {print $0 }' |awk '{print $11}'|awk -F ',' '{print $3"|1"}' |awk -F"|" '{a[$1]+=$2;b[$1]++}END{for(n in a)print a[n] " " n}'|sortmobile
cat */access_log.20170911.acc|grep 'HTTP/1.0 200'|awk -F 'HTTP/1.0 200' '{print $1}'|awk -F ' ' '{if($5>0.5) print $9"|"$5}'|awk -F"|" '{a[$1]+=$2;b[$1]++}END{for(n in a)print a[n]/b[n]"s"" "n"\t"" "b[n]"次数"}'|sortsed
查询某个时间段以内的信息 cat access_log20190513.log | grep "13/May/2019" | sed -n '/10:55:44/,/10:57:23/p' > a.txt请求
统计每一个接口的请求次数 去重,uniq -c 只会合并相邻的记录,因此在使用它以前,应该先进行排序 cat a.txt |awk '{print $7}' |sort |uniq -c
再排序,获得 (次数 内容)的文件, sort -k 1 -n -r 指定对第一行进行排序,-n 数字排序,以降序排列 cat a.txt |awk '{print $7}' |sort |uniq -c |sort -k 1 -n -r
一.uniq 命令用来过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行 参数: -c 显示输出中,在每行行首加上本行在文件中出现的次数 -d 只显示重复行 -u 只显示文件中不重复的各行 -n 前n个字段与每一个字段前的空白一块儿被忽略 +n 前n个字符被忽略,以前的字符被跳过(字符从0开始编号) -f n与-n相同,这里n是字段数 -s n与+n相同,这里n是字符数 经常使用: uniq -c 首行显示文件中出现的次数
二.sort 排序 参数: -u 在输出行中去除重复行 -r 默认的排序方式为升序,-r转换为降序排列 -n 默认按照字符来排序出现10在2前面,-n以数值来排序 -t 后面设定间隔符 -k 指定列数 如:sort -n -k 2 -t : test.txt 以数值排序,按照第二列以“:”间隔来排列顺序
、、、