Cortar texto entre duas vírgulas, excluindo o texto de acompanhamento

0

Estou tendo um tempo para descobrir como extrair as informações de IP de uma saída semelhante a esta:

Fri Jun  9 19:01:54 2017,10.0.0.65,devi1,0,unknown os
Fri Jun  9 19:01:54 2017,10.0.0.55,host1,0,unknown os
Fri Jun  9 19:01:54 2017,10.0.0.35,srv01,0,unknown os
Sat Jun 10 23:11:13 2017,10.0.0.10,switch.domain.com,0,unknown os

Todas as dicas sobre como eu posso sair dessa saída:

10.0.0.65
10.0.0.55
10.0.0.35
10.0.0.10

Executando no Bash 4.3.30 no Linux.

Qualquer ajuda seria muito apreciada. Muito obrigado!

    
por t988GF 13.06.2017 / 23:24

2 respostas

4

Embora você possa fazer isso com awk ou sed , para uma simples extração entre delimitadores fixos cut é provavelmente o melhor ajuste:

$ cut -d, -f2 < input
    
por 13.06.2017 / 23:27
3

com awk :

awk -F, '{print $2}' /path/to/input

com cut :

cut -d, -f2 /path/to/input
    
por 13.06.2017 / 23:31