Bash Script: conte linhas únicas no arquivo

Situação:

Eu tenho um arquivo grande (milhões de linhas) contendo endereços IP e portas de uma captura de rede de várias horas, um ip / porta por linha. As linhas são deste formato:

ip.ad.dre.ss[:port]
Resultado desejado:

Há uma entrada para cada pacote que recebi durante o registro, portanto, há muitos endereços duplicados. Eu gostaria de ser capaz de executar isso através de um script de shell de algum tipo que será capaz de reduzi-lo para linhas do formato

ip.ad.dre.ss[:port] count

Ondecount é o número de ocorrências desse endereço específico (e porta). Nenhum trabalho especial deve ser feito, trate portas diferentes como endereços diferentes.

Até agora, estou usando este comando para raspar todos os endereços IP do arquivo de log:

grep -o -E [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(:[0-9]+)? ip_traffic-1.log > ips.txt

A partir disso, eu posso usar um regex razoavelmente simples para extrair todos os endereços IP que foram enviados pelo meu endereço (que eu não me importo)

Em seguida, posso usar o seguinte para extrair as entradas exclusivas:

sort -u ips.txt > intermediate.txt

Eu não sei como eu posso agregar a linha conta de alguma forma com o tipo.

questionAnswers(1)

yourAnswerToTheQuestion