Encontre uma string entre espaços

0

Eu estava pesquisando o site e não consegui encontrar uma solução para o seguinte, apesar de ser uma coisa simples. Então deixe-me compartilhar ...

Se você conhece uma solução melhor, por favor, compartilhe

Eu tenho o seguinte log

Conteúdo

message 0956 5213649785 foobarfoobarfoobar foobar foobar foobarfoobar
message 2:1:0956 2:5:5213649785 foobarfoobarfoobar foobar foobar foobarfoobar
message 0989 5278956425 foobar foobarfoobar foobar foobar foobar
message 8:9:0989 6:1:5278956425 foobar foobarfoobar foobar foobar foobar
message 0856 9865452132 foobarfooba rfoobar foobar foobar foobar
message 7:4:0856 2:0:9865452132 foobarfooba rfoobar foobar foobar foobar
message 0989 2134687521 foob arfo obarfoo bar foobar foo bar foob ar
message 8:8:0989 9:0:2134687521 foob arfo obarfoo bar foobar foo bar foob ar

Eu quero pegar todas as linhas que têm uma string numérica com 12 caracteres entre espaços

Com isso eu pude encontrar a string numérica e o tamanho específico

grep -E '[0-9]{12}' file.log 

Mas como conseguir aqueles que estão entre espaços?

    
por tachomi 09.06.2015 / 21:07

2 respostas

1

Basta colocar espaços no regexp onde você deseja combiná-los.

grep -E ' [0-9]{12} ' file.log
    
por 09.06.2015 / 21:11
1

Use a expressão [[:space:]]

grep -E '[[:space:]][0-9]{12}[[:space:]]' file.log
    
por 09.06.2015 / 21:07

Tags