2013年10月07日

Windowsのコマンドプロンプトでgrepコマンドのような文字列検索をする方法

linuxを使っているとgrepコマンドでファイル内の文字列を検索しまくることが多いのですが、Windowsのコマンドプロンプトでgrepに相当するコマンドがあることがわかったのでメモします。

そのコマンドはfindコマンド。linuxでは、ファイル自体を探すコマンド名と同じです。ややこしいですねw

使用方法:
ファイル (複数可) 内のテキスト文字列を検索します。

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "文字列" [[ドライブ:][パス]ファイル名[...]]

/V 指定した文字列を含まない行をすべて表示します。
/C 指定した文字列を含む行の数だけを表示します。
/N 行番号を表示します。
/I 大文字と小文字の区別をしないで検索します。
/OFF[LINE] オフライン属性が設定されたファイルをスキップしません。
"文字列" 検索する文字列を指定します。
[ドライブ:][パス]ファイル名
検索するファイル (複数可) を指定します。

パスが指定されていないときは、プロンプトで入力されたテキストまた
は別のコマンドからパイプ処理で渡されたテキストを検索します。


例1)test.txtの、abcという文字列を含む行を表示したい場合
find "abc" test.txt

例2)test.txtのabcという文字列を含まない行を表示したい場合
find /v "abc" test.txt

例3)test.txtのabcという文字列を含み、defという文字を含まない行を表示
find "abc" test.txt | find /v "def"

grepを使いたいためだけにcygwinを入れなきゃ・・・という方には便利なコマンドです。




posted by muranko at 22:03| Comment(0) | windows | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は180日以上新しい記事の投稿がないブログに表示されております。