У меня есть файл со значениями вроде этого:
31.13.77.12:443 ВРЕМЯ_ОЖИДАНИЯ
31.13.77.12:443 УСТАНОВЛЕНО
31.13.77.36:443 УСТАНОВЛЕНО
31.13.77.29:443 УСТАНОВЛЕНО
31.13.77.12:443 ВРЕМЯ_ОЖИДАНИЯ
Мне нужен вывод в файле следующего вида:
IP_ADDR Порт Статус Количество
31.13.77.12 443 TIME_WAIT 2
31.13.77.12 443 ESTABLISHED 1
31.13.77.36 443 ESTABLISHED 1
31.13.77.29 443 ESTABLISHED 1
Все поля разделены табуляцией. Я могу извлечь IP и порт, но я не знаю, как сравнить два столбца и получить количество.
решение1
netstat -n | awk '$1=="tcp"{print $5,$6}' OFS="\t\t" >output.txt
sort output.txt | uniq --count >output1.txt
echo -e "Count" "IP" '\t\t' "Port" '\t' "State" >final.txt
sed 's/\:/\t/' output1.txt >> final.txt