История изменений
Исправление unterwulf, (текущая версия) :
Не уверен, что правильно понял задачу, т.к. её словесное описание расходится с приведённым кодом на шелле. Предлагаю попробовать такой вариант. (Лог этому скрипту в стандартный ввод.)
#!/usr/bin/gawk -f
/ A=auth_[a-zA-Z0-9@:_.-]+/ {
match($0, / A=(auth_[a-zA-Z0-9@:_.-]+)/, matches)
key = matches[1]
senders[key] += split(gensub(/^.* for /, "", "g", $0), ignore)
}
END {
for (key in senders) {
print key "\t" senders[key]
}
}
Исходная версия unterwulf, :
Не уверен, что правильно понял задачу, т.к. её словесное описание расходится с приведённым кодом на шелле. Предлагаю попробовать такой вариант. (Лог этому скрипту в стандартный ввод.)
#!/usr/bin/awk -f
/ A=auth_[a-zA-Z0-9@:_.-]+/ {
match($0, / A=(auth_[a-zA-Z0-9@:_.-]+)/, matches)
key = matches[1]
senders[key] += split(gensub(/^.* for /, "", "g", $0), ignore)
}
END {
for (key in senders) {
print key "\t" senders[key]
}
}