《一周学会Linux》面试题
0. 前言
题目皆取自于《一周学会Linux》,仅做了一些笔记。
文章存在哪些问题,无论是错别字,还是哪一处不理解,欢迎在评论区指出。
1. 统计IP访问次数
题目描述
分析日志t.log(访问量),将各个ip地址截取,并统计出现次数,并按从大到小排序(腾讯.)
t.log 中有这些内容:
http://192.168.200.10/index1.html
http://192.168.200.10/index2.html
http://192.168.200.20/index1.html
http://192.168.200.30/index1.html
http://192.168.200.40/index1.html
http://192.168.200.30/order.html
http://192.168.200.10/order.html
分析及答案
cat t.txt |cut -d '/' -f 3
:查看文档内容,并且以cut ‘/’ 截断内容,获取第3部分的内容
192.168.200.10
192.168.200.10
192.168.200.20
192.168.200.30
192.168.200.40
192.168.200.30
192.168.200.10
cat t.txt |cut -d '/' -f 3 |sort |uniq -c
: 将ip地址排序,然后去重并统计次数,次数显示在第一列
3 192.168.200.10
1 192.168.200.20
2 192.168.200.30
1 192.168.200.40
sort | uniq -c
经常配合使用
cat t.txt |cut -d '/' -f 3 |sort |uniq -c | sort -nr
: 按统计次数从大到小排序
3 192.168.200.10
2 192.168.200.30
1 192.168.200.40
1 192.168.200.20
需要掌握的Linux命令
- cut
- sort
- uniq
2. 统计连接到服务器IP情况
题目描述
统计连接到服务器的各个ip 情况,并按连接数从大到小排序(腾讯)
答案及分析
netstat -an |grep ESTABLISHED
:netstat
命令用于显示网络状态,-an
显示所有连线中的Socket,直接使用IP地址,而不通过域名服务器。查看已连接的IP
tcp 0 36 192.168.200.128:22 192.168.200.1:8553 ESTABLISHED
udp 0 0 192.168.200.128:44568 116.203.151.74:123 ESTABLISHED
netstat -an |grep ESTABLISHED | awk -F " " '{print $5}'
: 以空格分隔,显示分割后的第5个部分。
AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Wein