web-dev-qa-db-ja.com

findstr DOSコマンドの複数の文字列引数

findstr /v "black"  File1.txt

上記のDOSコマンドは、文字列「黒」に一致しない「File1.txt」の内容を表示します。

単語「黒」と「白」をフィルタリングする必要がある場合、このコマンドを変更するにはどうすればよいですか?

22
Arun

「黒」と「白」の単語をどのようにフィルタリングしますか?

次のコマンドは、"black"[〜#〜] nor [〜#〜]"white"を含むすべての行を表示します。

findstr /v "black white" blackwhite.txt

次のコマンドは、"black"[〜#〜]または[〜#〜]"white"を含むすべての行を表示します。

findstr "black white" blackwhite.txt

次のコマンドは、[〜#〜] exactly [〜#〜]"black white "を含むすべての行を表示します。

findstr /c:"black white" blackwhite.txt

次のコマンドは、"black"[〜#〜]および[〜#〜]"white"を含むすべての行を表示します。

findstr "white" blackwhite.txt | findstr "black"

ノート:

  • 検索文字列にスペースで区切られた複数の単語が含まれている場合、findstrはいずれかの単語(OR)を含む行を返します。

  • リテラル検索(/C:string)は、この動作を逆にして、句または文を検索できるようにします。リテラル検索では、句読文字も検索できます。

データファイルの例(blackwhite.txt):

red
black
white
blue
black white
black and white

出力例:

F:\test>findstr /v "black white" blackwhite.txt

red
blue

F:\test>findstr "black white" blackwhite.txt
black
white
black white
black and white

F:\test>findstr /c:"black white" blackwhite.txt
black white

F:\test>findstr "white" blackwhite.txt | findstr "black"
black white
black and white

参考文献

34
DavidPostill

「黒」または「白」という単語を含むすべての行を表示する必要がある場合は、コマンドで/ vを削除してください。

試してみてください:findstr白File1.txtまたはfindstr黒File1.txtまたはfindstr "黒白" File1.txt

/ Vオペランドは、検索文字列を含まないすべての行を出力します。

「findstr /?」と入力します。 findstrの使用方法の詳細については。

0
Dean Spicer