常用
findstr /s "検索文字列" ./* | more
現在のディレクトリ以下のすべてのファイルから、 検索文字列
を検索する。
たくさんある場合、ページングする。( more
コマンド)
フォーマットとオプション
findstr [オプション] 検索する文字列 ファイル名
注意点
複数の文字列を検索する場合には、引数 /C を使わず、各文字列をスペースで区切ります。
たとえば、FINDSTR "hello there" x.y と指定した場合は、ファイル x.y で "hello" または "there" が検索されます。
これに対して、FINDSTR /C:"hello there" x.y と指定した場合はファイル x.y で "hello there" が検索されます。
らしいです。
よく使うやつ
-
/S
: サブディレクトリを全部、再帰する。(シンボリックリンクも辿るかは未検証) -
/I
: アルファベットの大小文字を区別しない。(デフォだと区別する) -
/X
: 完全一致する行だけ。 -
/N
: 行番号も表示する。(デフォだとファイル名だけ)
完全版(findstr /?
のコピペ)
ファイルから文字列を検索します。
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P]
[/F:ファイル] [/C:文字列] [/G:ファイル] [/D:ディレクトリ一覧]
[/A:色属性] [/OFF[LINE]] 文字列 [[ドライブ:][パス]ファイル名[ ...]]/B 行の先頭にあるパターンを検索します。
/E 行の末尾にあるパターンを検索します。
/L 検索文字列をリテラルとして使用します。
/R 検索文字列を正規表現として使用します。
/S 現在のディレクトリとすべてのサブディレクトリから一致するファイルを検索します。
/I 検索するときに大文字と小文字を区別しません。
/X 完全に一致する行を出力します。
/V 一致しない行のみを出力します。
/N 一致する各行の前に行番号を出力します。
/M ファイルに一致する行があるときに、ファイル名のみを出力します。
/O 一致する各行の前に文字オフセットを出力します。
/P 印刷不可能な文字を含むファイルをスキップします。
/OFF[LINE] オフライン属性が設定されたファイルをスキップしません。
/A:属性 2 桁の 16 進数で色属性を指定します。"color /?" を参照してください。
/F:ファイル 指定したファイルからファイル一覧を読み取ります (/ を指定するとコンソール)。
/C:文字列 指定された文字列をリテラル検索文字列として使用します。
/G:ファイル 指定されたファイルから検索文字列を取得します (/ を指定するとコンソール)。
/D:ディレクトリ セミコロンで区切られた検索されるディレクトリ文字列テキストの一覧を検索します。
[ドライブ:][パス]ファイル名 検索するファイルを指定します。複数の文字列を検索する場合には、引数 /C を使わず、各文字列をスペースで区切ります。
たとえば、FINDSTR "hello there" x.y と指定した場合は、ファイル x.y で "hello" または "there" が検索されます。
これに対して、FINDSTR /C:"hello there" x.y と指定した場合はファイル x.y で "hello there" が検索されます。正規表現クイック リファレンス:
. ワイルドカード: 任意の文字
* 繰り返し: ゼロ個以上の直前の文字またはクラス
^ 行位置: 行頭
$ 行位置: 行末
[class] 文字クラス: セットの任意の 1 文字
[^class] 逆クラス: セット以外の任意の 1 文字
[x-y] 範囲: 指定した範囲の任意の文字
\x エスケープ: メタ文字 x のリテラル使用
<xyz 単語位置: 単語の先頭
xyz> 単語位置: 単語の終わり