我需要计算文件中不同IP的次数。
我正在使用它来打开文件,因为我无权grep
仅使用grep
我的权利
User lotarc may run the following commands on herbert:
(root) /bin/su - censored
(root) /bin/su - censored
(root) /bin/cat /var/log/nginx/access.log, /bin/cat /var/log/nginx/access.log.1, /bin/zcat /var/log/nginx/access.log.[0-9]*.gz, /bin/cat /var/log/nginx/error.log, /bin/cat /var/log/nginx/error.log.1, /bin/zcat
/var/log/nginx/error.log.[0-9]*.gz
sudo cat /var/log/nginx/access.log.1 | grep -E '1ip|2ip|3ip'
我的问题是如何计算此ip并获取输出。我需要从多个文件中进行计数,例如access.log.2.gz
文件内容
some ip - - [30/Sep/2019:07:26:03 +0300] "POST /clientapp/request/signUp HTTP/1.1" 200 0 "-" "python-requests/2.22.0" "-"
试试这个,
cat access_log | awk '{a[$1]++} END {for(i in a) print a[i],i}' | sort -n | tail -n1
对于特定IP:
cat access_log | awk '$1 == "192.168.1.37" || $1 == "192.168.1.110" {a[$1]++} END {for(i in a) print a[i],i}'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句