como grep linhas após a terceira vírgula com condição

0

Eu quero ver as linhas do texto com 4 dígitos após a terceira vírgula.

Input:

123456789012345,00,0000,000
111111111111111,00,0000,0000

Output:

111111111111111,00,0000,0000

    
por αԋɱҽԃ αмєяιcαη 27.11.2017 / 15:54

3 respostas

2

Você pode fazer isso usando awk :

$ awk -F, 'length($4) == 4' file
111111111111111,00,0000,0000
    
por 27.11.2017 / 15:57
1

Para corresponder a 4 dígitos após a terceira vírgula :

awk -F, '$4~/^[0-9]{4}$/' file
    
por 27.11.2017 / 16:33
1

Para corresponder em linhas que tenham apenas dígitos decimais e, em seguida, o final da linha (que nada mais é, nem mesmo uma vírgula permitida depois) após a terceira vírgula, com grep :

grep -xE '([^,]*,){3}[0-9]{4}' <file
    
por 27.11.2017 / 17:55