ファイル内のテキストのパターンを検索します。
構文
findstr [/b] [/e] [/l | /r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/f:<file>] [/c:<string>] [/g:<file>] [/d:<dirlist>] [/a:<colorattribute>] [/off[line]] <strings> [<drive>:][<path>]<filename>[ ...]
パラメーター
パラメーター | 説明 |
---|---|
/b | テキスト パターンが行の先頭にある場合に一致します。 |
/e | テキスト パターンが行の末尾にある場合に一致します。 |
/l | 検索文字列を文字どおり処理します。 |
/r | 検索文字列を正規表現として処理します。 これが既定の設定です。 |
/s | 現在のディレクトリとすべてのサブディレクトリを検索します。 |
/私 | 文字列を検索するときに、文字の大文字と小文字を無視します。 |
/x | 正確に一致する行を出力します。 |
/v | 一致するものが含まれていない行のみを印刷します。 |
/n | 一致する各行の行番号を出力します。 |
/m | ファイルに一致するものが含まれている場合は、ファイル名のみを出力します。 |
/o | 一致する各行の前に文字オフセットを出力します。 |
/p | 印刷できない文字を含むファイルをスキップします。 |
/off[回線] | オフライン属性が設定されているファイルはスキップしません。 |
/f:<file> |
指定したファイルからファイル リストを取得します。 |
/c です。<string> |
指定したテキストをリテラル検索文字列として使用します。 |
/g:<file> |
指定したファイルから検索文字列を取得します。 |
/d:<dirlist> |
指定したディレクトリの一覧を検索します。 各ディレクトリは、セミコロン (;)、 dir1;dir2;dir3 など) で区切る必要があります。 |
/ある:<colorattribute> |
2 桁の 16 進数の色属性を指定します。 詳細については、「 color /? 」と入力します。 |
<strings> |
ファイル名で検索するテキストを指定します。 必須。 |
[\<drive>:][<path>]<filename>[...] |
検索する場所とファイルを指定します。 少なくとも 1 つのファイル名が必要です。 |
/? | コマンド プロンプトにヘルプを表示します。 |
注釈
すべての findstr コマンド ライン オプションは、コマンド文字列内の 文字列 と ファイル名 の前に置く必要があります。
正規表現では、文字の正確な文字列ではなく、リテラル文字とメタ文字の両方を使用してテキストのパターンを検索します。
リテラル文字は、正規表現構文で特別な意味を持たない文字です。代わりに、その文字の出現と一致します。 たとえば、文字と数字はリテラル文字です。
メタ文字は、正規表現構文で特別な意味 (演算子または区切り記号) を持つ記号です。
受け入れられるメタ文字は次のとおりです。
メタ文字 価値 .
ワイルドカード - 任意の文字 *
繰り返し - 前の文字またはクラスの 0 回以上の出現。 ^
開始行の位置 - 行の先頭。 $
終了行の位置 - 行の末尾。 [class]
文字クラス - セット内の任意の 1 文字。 [^class]
逆クラス - セット内にない任意の 1 文字。 [x-y]
範囲 - 指定した範囲内の任意の文字。 \x
エスケープ - メタ文字のリテラル使用。 \<string
単語の開始位置 - 単語の先頭。 string\>
終了単語の位置 - 単語の末尾。 正規表現構文の特殊文字は、一緒に使用する場合に最も強力です。 たとえば、ワイルドカード文字 (
.
) と繰り返し (*
) 文字の組み合わせを使用して、任意の文字列に一致させます。.*
大きな式の一部として次の式を使用して、 b で始まり 、ing で終わる任意の文字列と一致させます。
b.*ing
一連のファイルで複数の文字列を検索するには、個別の行に各検索条件を含むテキスト ファイルを作成する必要があります。
引数の前に /c が付いている場合を除き、スペースを使用して複数の検索文字列を区切ります。
例示
x.y ファイルで hello または hello を検索するには、次のように入力します。
findstr hello there x.y
x.y ファイルで hello を検索するには、次のように入力します。
findstr /c:"hello there" x.y
ファイル proposal.txtで Windows という単語 (最初の大文字 W) のすべての出現箇所を検索するには、次のように入力します。
findstr Windows proposal.txt
現在のディレクトリ内のすべてのファイルと Windows という単語を含むすべてのサブディレクトリを検索するには、文字の大文字と小文字に関係なく、次のように入力します。
findstr /s /i Windows *.*
FOR で始まり、0 個以上のスペース (コンピューター プログラム ループなど) で始まる行をすべて検索し、各出現箇所が見つかった行番号を表示するには、次のように入力します。
findstr /b /n /r /c:^ *FOR *.bas
テキスト ファイルで検索する正確なファイルを一覧表示するには、ファイルstringlist.txtの検索条件を使用して、filelist.txtに一覧表示されているファイルを検索し、結果をファイルの結果に格納します。out、次のように入力します。
findstr /g:stringlist.txt /f:filelist.txt > results.out
現在のディレクトリとすべてのサブディレクトリ内の コンピューター という単語を含むすべてのファイルを一覧表示するには、大文字と小文字に関係なく、次のように入力します。
findstr /s /i /m \<computer\> *.*
コンピューターという単語と comp で始まる他の単語 (補完や競合など) を含むすべてのファイルを一覧表示するには、次のように入力します。
findstr /s /i /m \<comp.* *.*