Come posso combinare più comandi grep?


15

Ho un comando come questo:

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

e sta diventando più grande, c'è un modo per rendere questo più ordinato?

Risposte:


16

Un'altra opzione:

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

10

Puoi usare:

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

oppure puoi usare il flag -E per abilitare espressioni regolari estese, che ti permetteranno di evitare di sfuggire alle parentesi e ai caratteri di pipe:

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

7

In alternativa, è possibile posizionare tutti i motivi in ​​un file, un motivo per riga e utilizzare

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

Semplificherebbe le cose se usi i modelli regolarmente

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.