powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / awk и exim log
5 сообщений из 5, страница 1 из 1
awk и exim log
    #37406635
ZackOne
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста человеку, который видит awk в первый раз) Буду очень признателен

есть лог вида:
месяц день время fm exim[19822]: 0000-00-00 время ID_письма <= емаил_отправителя H=[UNAVAILABLE] (DNMIAVBUI) [118.170.67.214] P=esmtp S=5003 id=36A4CA33559C4526A5085A2DED11E336@applecf5d520e1
месяц день время fm exim[19826]: 0000-00 время ID_письма => емаил_получателя R=dnslookup T=remote_smtp H=smtp1.efgbank.com [193.0.237.78] X=TLSv1:DHE-RSA-AES256-SHA:256
месяц день время fm exim[19826]: 0000-00-00 время ID_письма Completed

Нужно с помощью awk выбрать 5 самых активных ящиков и для каждого ящика наиболее активного собеседника.
...
Рейтинг: 0 / 0
awk и exim log
    #37406683
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>5 самых активных ящиков

предположим что надо посчитать кол-во строк сгруппировав по 2-му столбцу:
awk '{a[$3]=a[$3]+1}END{for(i in a)print i,a[i]}'


>и для каждого ящика наиболее активного собеседника
не смог распарсить.
...
Рейтинг: 0 / 0
awk и exim log
    #37406727
ZackOne
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Журавлев Денис
предположим что надо посчитать кол-во строк сгруппировав по 2-му столбцу:
awk '{a[$3]=a[$3]+1}END{for(i in a)print i,a[i]}'


ну если брать конкретно мой лог то тут выходит
awk '{a[$10]=a[$10]+1}END{for(i in a)print i,a[i]}'
или я что-то не понимаю?

Не очень дружу с регулярными выражениями...
но допустим этот запрос мне выдал такой список:
***@jobbyyou.com 1
*****@yandex.ru 1
****@eth183.eld.ford.com 3
***@sartoriuscorp.com 42
e3-1268310157698-7c49II5a5c7f@e3.emsmtp.com 1
[217.69.129.202] 2
****@mcomi.com 2

Т.е. иногда попадаются емайлы, иногда IP. как из этого вытащить только 5 самых активных ящиков.
...
Рейтинг: 0 / 0
awk и exim log
    #37406909
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
откуда у вас айпи я не знаю, это ваш лог. Тут кстати нет регулярных выражений, вообще ни одного. Ассоциативный массив, ячейки которого инкрементируются 1.

Можно отсортировать и awk-м но проще awk .....|sort -k2nr|head -5

sort -k2nr сортируем 2-й столбец, как number и revers
head -5 первые пять строк.
...
Рейтинг: 0 / 0
awk и exim log
    #37406915
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В состав exim входит готовая тулза eximstats, она половину описанной задачи делает. Написана на perl, должно быть не очень сложно доработать.

С другой стороны, не очень понятно зачем писать практическую задачу на языке, "который видит awk в первый раз"?
В знакомых языках нету возможности читать текст из файла?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / awk и exim log
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]