#!/usr/bin/awk -f BEGIN { } { if (($6 == "authentication") && ($7 == "failure;")) { split($13, tmp, /=/); host = tmp[2]; split($14, tmp, /=/); user = tmp[2]; if ((host != "") && (user != "")) { xb[user,host] = 1; users[user] = 1; hosts[host] = 1; } } } END { asorti(users); asorti(hosts); printf(" : \n"); for (i in hosts) for (j in users) if (xb[users[j], hosts[i]] == 1) printf("%-50s %-20s\n", hosts[i], users[j]); printf(" : \n"); for (j in users) for (i in hosts) if (xb[users[j], hosts[i]] == 1) printf("%-20s %-50s\n", users[j], hosts[i]); }