Incluindo ou no padrão grep

1

Eu quero grep uma quebra de linha em aspas simples ou aspas duplas

por exemplo.

"myWord"
'myWord'

Estou usando

grep -rn "\"\|\'myWord\'\|\""

isso deve permitir "myWord" , 'myWord" , "myWord' and 'myWord' , mas não está funcionando, o que está errado?

    
por user445670 23.09.2015 / 02:17

1 resposta

3

Acho que você está procurando:

grep -rn "[\"']myWord[\"']"

Sua abordagem seria:

grep -Ern "(\"|')myWord(\"|')"

Você pode ir um pouco mais avançado para não permitir 'myWord" :

grep -Ern "(\"|')myWord"

Os problemas com os seus são:

  • | é para expressões regulares estendidas
  • | será aplicado a todo o padrão se não estiver entre parênteses
  • 'não precisa ser citado
por 23.09.2015 / 02:24