2014-05-07 4 views
7

Zum Befehl findstr str1 *.* möchte ich etwas hinzufügen, das die Ergebnisse ausschließt, die die Zeichenfolge str2 enthalten.Windows 'findstr' Befehl: Ergebnisse mit bestimmten Zeichenfolgen ausschließen

In Linux ist die Art, es zu tun, | grep -v str2 (zu grep str1 * natürlich) hinzuzufügen. Gibt es in Windows ein gleichwertiges Flag für -v?

+0

Ich tippte 'findstr /' in das Befehlsfenster und sah '/ V Drucken nur Linien, die keinen match.' –

+0

Dank enthalten?. Sie können es als Antwort hinzufügen. – Subway

Antwort

8

Gibt es ein gleichwertiges Flag zu -v in Windows?

Das Äquivalent zu -v ist /V.

C:\Users\Todd>findstr /? 
Searches for strings in files. 

... 

/V   Prints only lines that do not contain a match. 
5

Verwendung /V, zum Beispiel: findstr "hello world" *.cpp | findstr /V ".git\\"

+0

Wow! Ich habe gerade herausgefunden, dass du den doppelten Backslash brauchst, '" .git \ "' funktioniert nicht. Der einzige Nachteil ist, dass die Dateinamen nicht mehr hervorgehoben sind :(Ich habe jetzt einen Ersatz für 'wcgrep', indem ich' findstr/S "nadel" * | findstr/V "..." 'verwende –