Com a sintaxe grep
padrão:
grep '[>|]'
ou
grep -e '>' -e '|'
ou
grep '>
|'
ou
grep -E '>|\|'
Como posso grep para a linha que contém o caractere de pipe |
ou para o caractere >
:
files content:
|this is test
where is >
this is none
agora o que eu preciso usando o comando grep é
grep -iE "<some expression>" file_name
Saída:
|this is test
where is >
Com a sintaxe grep
padrão:
grep '[>|]'
ou
grep -e '>' -e '|'
ou
grep '>
|'
ou
grep -E '>|\|'
Se você estiver usando o GNU grep, poderá fazê-lo com o operador ou ( |
), que deve ter escape (precedido por uma barra invertida \
). Então, para encontrar linhas contendo um pipe ou um sinal de maior que, incluí-las literalmente com o operador ou :
grep '|\|>' infile
Saída:
|this is test
where is >
Usando a expressão de colchetes para corresponder a um dos caracteres desejados:
grep "[|>]" infile
Saída:
|this is test
where is >
A maneira correta de realizá-lo é usando o flag -e, que é especificado pelo POSIX. Por exemplo:
grep -e '>\||' infile