Seleciona todas as instâncias do texto citado de um arquivo

1

Existe alguma maneira de grep ou obter de qualquer outra forma todas as ocorrências de texto dentro de cada par de aspas duplas em um arquivo? Já vi respostas como esta: link , mas elas não funcionam em casos em que cada linha pode conter um número arbitrário de strings entre aspas.

Então, para uma entrada como esta:

Here was some "text over here", and then there was "text over there".

Eu gostaria que a saída fosse:

"text over here"
"text over there"

Não precisa incluir as citações.

    
por SaltyNuts 03.12.2015 / 01:15

2 respostas

3

$ cat aaaa
foo "bar" base "ere" fff
"fff"ggggg"rr"

$ grep -o '"[^"]*"' aaaa
"bar"
"ere"
"fff"
"rr"
    
por 03.12.2015 / 01:45
1

Tente:

grep -o '"[^"]*"' /path/to/file

Observação: [^"]* é a versão não-voraz do curinga ( .* ), portanto você pode corresponder a mais de uma ocorrência por linha.

    
por 03.12.2015 / 01:45