grepと言えば、ファイル中から正規表現で指定した文字列を探し出すUnixのコマンド。エディタにも同様の機能が搭載されているものも多く、プログラムを書くにあたっては大いに力を発揮します。しかし、このgrepはWindows自体には搭載されていません。そこで、似たような機能がないかと探していたところ、見つけたのが「findstr」コマンドです。
例えば、C++のソースコードから「hoge」という文字列を探し出したいとき、cdコマンドでソースコードのあるディレクトリに移動した後、次のようにコマンドを入力します。
>findstr /S hoge *.cpp
これで「hoge」という文字列を含むcppファイルを全て洗い出すことができます。
/Sは「サブディレクトリも検索する」というオプションです。
他に使いそうなオプションは
- /N:行番号を表示する
- /I:大文字/小文字を区別しない
などでしょうか。他にも様々なオプションがありますが、詳細については下記の通りに入力すると見ることができます。
>findstr /?