Reputation: 31
here is my code
iwlist wlan0 scan | grep -w "ESSID\|Quality"
it returns
Quality=53/70 Signal level=-57 dBm
ESSID:"NETGEAR00"
Quality=50/70 Signal level=-60 dBm
ESSID:"dlink_test"
Quality=56/70 Signal level=-54 dBm
ESSID:""
Quality=49/70 Signal level=-61 dBm
ESSID:"linksys"
Quality=67/70 Signal level=-43 dBm
I would like to sort it by the ESSID first, followed by the Quality level on the same line.
ESSID:"NETGEAR00" Quality=53/70 Signal level=-57 dBm
Any suggestions? Linux Newb!
Upvotes: 0
Views: 372
Reputation: 123518
It seems that you don't want to sort, but to simply join pairs of lines (the second before the first). Try:
iwlist wlan0 scan | grep -w "ESSID\|Quality" | tac | sed '$!N;s/\n/\t/'
For the given input, it would yield:
ESSID:"linksys" Quality=49/70 Signal level=-61 dBm
ESSID:"" Quality=56/70 Signal level=-54 dBm
ESSID:"dlink_test" Quality=50/70 Signal level=-60 dBm
ESSID:"NETGEAR00" Quality=53/70 Signal level=-57 dBm
Upvotes: 1