Como posso grep para a linha que contém o caractere de pipe |
ou 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
Resultado:
|this is test
where is >
\|
não é um padrãoBRE
operador, embora ele funciona com o GNUgrep
que é ogrep
encontrado na maioria dos sistemas operacionais construídos em torno de um kernel Linux.+
,?
) sendo açúcar sintático para\{1,\}
e\{0,1\}
. (por outro lado, EREs perder referências anteriores (\(.\)\1
), que são uma característica BRE apenas)Usando expressão de colchete para corresponder a um dos caracteres desejados:
grep "[|>]" infile
Resultado:
fonte
-i
ou-E
aqui.A maneira correta de fazer isso é usar o sinalizador -e especificado pelo POSIX. Por exemplo:
fonte
grep -e '>' -e '|' infile
funciona também-e
é especificado pelo POSIX, mas não é útil aqui.\|
não é especificado pelo POSIX.