2013-12-15 9 views
14

Próbuję odfiltrować kilka bloków tekstu, które powtarzają się w moim pliku dziennika. Na przykład;Jak odwrócić wyszukiwanie przy użyciu polecenia grep dla wielu ciągów tekstu

grep -v ("string one that I don't want" \| "string two that I don't want") file.log 

Próbowałem kilku odmian tego i próbowałem podkręcać białe przestrzenie. Czasami czasami odfiltrowuje pierwszy ciąg znaków. Jaki będzie właściwy format do odfiltrowania więcej niż jednego bloku tekstu za pomocą grep?

Odpowiedz

24

Można użyć -e opcji wielokrotnie w grep pominąć kilka pozycji wyszukiwania:

grep -v -e "string one that I don't want" -e "string two that I don't want" file.log 

albo użyć regex użyciu egrep

egrep -v 'string one|string two' file.log 
+1

Dziękuję. Obydwie metody działają. Próbowałem użyć tej metody egrep. Ale myślę, że umieszczam przestrzeń między postacią fajki. Więc nie działało w tym czasie. Teraz działa. – user2476714