¿Cómo combino múltiples comandos grep?

15

Tengo un comando como este:

| grep -v @param | grep -v @return | grep -v @Test | grep -v @throws

y se está haciendo más grande, ¿hay alguna manera de hacer esto más ordenado?

Adaptador UA
fuente

Respuestas:

16

Otra opción:

... | grep -v -e @param -e @return -e @Test -e @throws
Eric Wilson
fuente
10

Puedes usar:

... | grep -v "\(@param\|@return\|@Test\|@throws\)"

o puede usar el indicador -E para habilitar expresiones regulares extendidas, lo que le permitirá evitar escapar de los paréntesis y los caracteres de barra:

... | grep -Ev '(@param|@return|@Test|@throws)'
lgarzo
fuente
7

Alternativamente, puede colocar todos sus patrones en un archivo, un patrón por línea, y usar

... | grep -v -f matches.txt

Haría las cosas más fáciles si usa los patrones regularmente

Sergey
fuente