Exim: как вывести список IP из файла(ов)

Если вам срочно надо посчитать список IP из файла (в моем примере это письма в почтовом ящике и логи почтового сервера), то можно использовать следующие команды или написать скрипт:

cat /tmp/spam/* | perl -ne 'if (/(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})/) { print "$1.$2.$3.$4\n" }'

Выведет список всех IP:

195.244.144.2
78.153.0.60
37.9.53.72
194.225.24.191
195.244.144.2
78.153.0.60
37.9.53.72
194.231.200.245
195.244.144.2
87.237.206.37
127.0.0.1
91.222.7.10
188.234.174.163
195.244.144.2
187.19.146.2
109.195.109.233

Теперь добавим сортировку:

cat /tmp/spam/* | perl -ne 'if (/(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})/) { print "$1.$2.$3.$4\n" }' | sort | uniq -c | sort -n

На выходе получим более удобный вывод:

      1 109.195.109.233
      1 127.0.0.1
      1 187.19.146.2
      1 188.234.174.163
      1 194.225.24.191
      1 194.231.200.245
      1 87.237.206.37
      1 91.222.7.10
      2 37.9.53.72
      2 78.153.0.60
      4 195.244.144.2

Related posts:

  1. Exim + DKIM на примере CentOS Exim поддерживает DKIM, начиная с версии 4.71. В данный момент...
  2. Exim: сколько писем отправлено за день Проверьте что у вас ротация логов настроена раз в сутки...
You can leave a response, or trackback from your own site.

Оставить комментарий

*