我如何计算文件中的行数

塞缅·科列斯尼科夫(Semyon Kolesnikov)

我需要计算文件中不同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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章