shell命令汇总

统计打印localhost_access_log.20150218-20.txt.gz中单次访问超过500ms的请求数(friends_timeline.json接口)

zcat localhost_access_log.20150218-20.txt.gz|awk -F ' ' '{if($3>500)print$0}'|grep friends_timeline.json|wc -l 

查找当前目录下包含'sh'字符的文件(这个命令可以穿透jar包去查找jar包内是否有包含这个字符的文件)

find .|xargs grep -i 'propertyPlaceholderConfigurer'

端口占用命令检测

netstat-anpt|grep -w 8091

查询中项目中哪些jar中包含configloader.xml文件

for i in * ; do  jar -tvf $i | grep configloader.xml && echo $i; done

查看目前连接11190端口的机器数

netstat -nat |grep 11190 -c

查看java线程数

ps -eLf|grep java -c

查看系统流量

cat /proc/net/dev

查看系统负载

cat /proc/loadavg

查看系统内存情况

cat /proc/meminfo

查看CPU使用情况

cat /proc/meminfo

============access.log nginx=============常用shell命令汇总

查看访问应用的ip总数

awk '{print $1}' access.log|sort|uniq|wc -l

统计出某个IP的访问总次数

grep "172.17.2.226" access.log | wc -l

统计出每个IP的访问次数

awk '{++S[$1]} END {for (a in S) print a,S[a]}' access.log > log.txt

sort -n -t ' ' -k 2 log.txt

awk '{++S[$1]} END {for (a in S) print S[a],a}' access.log | sort -n

统计某个IP访问了哪些接口

grep ^172.17.3.68 access.log| awk '{print $1,$7}'

统计2006/1/30号11点访问系统的IP数

awk '{print $4,$1}' access.log | grep 30/Jan/2016:11 | awk '{print $2}'| sort | uniq | wc -l

查看访问前十个ip地址

awk '{print $1}' access.log|sort|uniq -c|sort -nr |head -10  # uniq -c 相当于分组统计并把统计数放在最前面

访问次数最多的10个接口

cat access.log|awk '{print $7}'|sort|uniq -c|sort -nr | head -10

访问reffer前10

cat access.log | awk '{print $11}' | sed -e ' s/http:\/\///' -e ' s/\/.*//' | sort | uniq -c | sort -rn | head -20

列出传输字节最大的几个接口 $10是字节数

cat access.log |awk '{print $10 " " $1 " " $4 " " $7}'|sort -nr|head -100

如果日志最后一列记录的是接口响应时间,则列出到客户端最耗时的接口 (默认没有响应时间,需要在nginx.conf中配置log_format  http://hxl2009.blog.51cto.com/779549/869652)

cat access.log | awk '{print $NF" "$1" "$4" "$7}' | sort -nr|head -100

查询出某个时间段里访问次数最多的10个ip

cat access.log | egrep '29/Jan/2016|30/Jan/2016' |awk '{print $1}'|sort|uniq -c|sort -nr|head -10

# 统计网站流量(G) 
cat access.log |awk '{sum+=$10} END {print sum/1024/1024/1024}

# 统计http status. 
cat access.log |awk '{counts[$(9)]+=1}; END {for(code in counts) print code, counts[code]}' 

# 统计404的连接 
awk '($9 ~/404/)' access.log | awk '{print $9,$7}' | sort

统计每秒的并发量

awk '{if($9~/200|30|404/) COUNT[$4]++} END{ for( a in COUNT) print a,COUNT[a]}' access.log|sort -k 2 -nr|head -n10

找出某天访问次数最多的10个IP 
cat access.log | grep "30/Jan/2016" |awk '{print $1}'|sort |uniq -c|sort -nr|head


# 当天ip连接数最高的ip都在干些什么: 
cat access.log | grep "172.17.2.210" | awk '{print $7}' | sort | uniq -c | sort -nr | head -n 10

#查看linux版本信息

lsb_release -a

发布了177 篇原创文章 · 获赞 14 · 访问量 47万+

猜你喜欢

转载自blog.csdn.net/qian_348840260/article/details/44203975