FINDSTRコマンドはファイルから指定した文字列を検索します。 FINDコマンドをより高機能にしたものです。
一般的な使い方としては
FINDSTR 文字列 ファイル名
になります。
以下のテキストがあったとして
TYPE a.txt
FINDSTR a a.txt
文字列aが含まれる行が表示されます。
FINDSTR "hello abc" a.txt
検索する文字列をダブルクォーテーションで括って、スペースで区切ることで 複数の文字列を検索することができます。
FINDSTR /V a a.txt
/Vスイッチをつけると、検索する文字列を含まない行が表示されます。
FINDSTR /N a a.txt
/Nスイッチをつけると、先頭に行番号が表示されます。
FINDSTR /A:3F /N a a.txt
/A:属性スイッチをつけると、行番号などの色を変更できます。 指定できる色は2桁の16進数で、COLORコマンドと同様です。
FINDSTR /I a a.txt
/Iスイッチをつけると、検索する文字列に対して大文字小文字の区別がなくなります。
FINDSTR /B a a.txt
FINDSTR /B bcd a.txt
/Bスイッチをつけると、行の先頭にあるかどうかを検索します。
FINDSTR /E e a.txt
FINDSTR /E bcd a.txt
/Eスイッチをつけると、行の末尾にあるかどうかを検索します。
FINDSTR /R ^a a.txt
FINDSTR /R d$ a.txt
FINDSTR /R [bcd] a.txt
/Rスイッチをつけると、正規表現として検索します。 ^aは/B a、d$は/E dと同義です。[bcd]は[]内にある任意の一文字が含まれている行を検索します。
正規表現の詳細についてはヘルプおよび以下のリンクを参照。
FINDSTR /C:"hello world" a.txt
FINDSTR /C:"hello abc" a.txt
/C:文字列 スイッチをつけると、リテラルとして検索します。 例えば、"hello world"なら「hello」と「world」のそれぞれを検索しますが、 /C:"hello world"であれば、「hello world」として検索するようになります。
FINDSTR /X /C:"hello world" a.txt
FINDSTR /X /C:"hello" a.txt
/Xスイッチをつけると完全に一致する行のみを検索します。
FINDSTR /S b *
/Sスイッチをつけると、サブディレクトリ(フォルダ)も含めて検索します。
FINDSTR /G:search.txt a.txt
/G:ファイル スイッチをつけると、検索する文字列をファイルから取得します。
DIR /B *.txt | FINDSTR /V a
FINDコマンドと同様、ファイルを指定しない場合、 他のコマンドの結果(パイプ | で渡す)などから文字列を検索することができます。
スイッチ(一部。その他詳細についてはFINDSTR /?
などを参照)
/V | 検索する文字列を含まない行を検索する |
/N | 行番号を表示する |
/A:属性 | 行番号などの出力に色属性を指定する |
/I | 検索する文字列に対して大文字小文字の区別をしない |
/B | 行の先頭にあるかどうかを検索する |
/E | 行の末尾にあるかどうかを検索する |
/R | 正規表現として検索する |
/C:文字列 | 文字列をリテラルとして検索する |
/X | 完全に一致する行を検索する |
/S | サブディレクトリ(フォルダ)も含めて検索する |
/G:ファイル | 検索する文字列をファイルから取得する |