Форум — Admin Подскажите как реализовать 0 0 Есть файлик в котором хранятся айпишники(многие из которых повторяются). Нужно выбрать скажем 10 наиболее часто встречающихся адресов. Ссылка
cat <file> | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}' | sort -nr | head anonymous (14.02.08 16:02:52 MSK) Показать ответы Ссылка
Ответ на: комментарий от anonymous 14.02.08 16:02:52 MSK Вру, вот так верно: cat <file> | awk '{a[$1]++ } END{for(i in a){print a[i] " " i}}' | sort -nr | head anonymous (14.02.08 16:16:25 MSK) Ссылка
Ответ на: комментарий от anonymous 14.02.08 16:02:52 MSK Не, чтото не то. Вот файлик 192.168.1.151 192.168.1.152 192.168.1.153 192.168.1.154 192.168.1.155 192.168.1.156 192.168.1.157 127.0.0.1 127.0.0.1 192.168.1.158 192.168.1.159 192.168.1.160 192.168.1.150 192.168.1.150 192.168.1.30 192.168.1.30 192.168.1.151 192.168.1.152 192.168.1.153 192.168.1.154 192.168.1.155 192.168.1.156 192.168.1.157 127.0.0.1 127.0.0.1 192.168.1.158 192.168.1.159 192.168.1.160 192.168.1.150 192.168.1.150 192.168.1.31 192.168.1.30 cat ip2 | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}' | sort -nr | head 32 anonymous (14.02.08 16:32:55 MSK) Показать ответ Ссылка
Ответ на: комментарий от anonymous 14.02.08 16:32:55 MSK О, супер, так заработало! А можете порекомендовать что почитать по bash-скриптингу, читал advanced bash guide - так там только описание синтаксиса, я же ищу задачи с примерами решения. anonymous (14.02.08 16:35:16 MSK) Показать ответ Ссылка
Ответ на: комментарий от anonymous 14.02.08 16:35:16 MSK cat address.txt | sort | uniq -c | sort -rn | head sdio ★★★★★ (14.02.08 16:42:27 MSK) Ссылка