Como combinar vários comandos grep?

15

Eu tenho um comando como este:

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

e está ficando cada vez maior, existe alguma maneira de tornar esse arrumado?

UAdapter
fonte

Respostas:

16

Outra opção:

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

Você pode usar:

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

ou você pode usar o sinalizador -E para ativar expressões regulares estendidas, o que permitirá evitar os parênteses e os caracteres de pipe:

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

Como alternativa, você pode colocar todos os seus padrões em um arquivo, um padrão por linha e usar

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

Facilitaria as coisas se você usasse os padrões regularmente

Sergey
fonte