Comment combiner plusieurs commandes grep?


15

J'ai une commande comme celle-ci:

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

et son grossissement, est-il possible de faire ce plus propre?

Réponses:


16

Une autre option:

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

10

Vous pouvez utiliser:

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

ou vous pouvez utiliser l'indicateur -E pour activer les expressions régulières étendues, ce qui vous permettra d'éviter d'échapper les parenthèses et les caractères de canal:

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

7

Alternativement, vous pouvez placer tous vos modèles dans un fichier, un modèle par ligne, et utiliser

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

Cela faciliterait les choses si vous utilisez régulièrement les modèles

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.