バッチではgrepの代わりに「findstr」を使う
windowsのbatchではgrepの代わりにfindstrが使うことができる。正規表現も使える。
オプション | 説明 |
---|---|
/v | 指定した文字列を含まない行を表示。 |
/i | 大文字・小文字の区別をしない。 |
/n | 検索結果に行番号をつける。 |
/m | 一致するものが1つでもあった場合、 検索一致行ではなくそのファイル名を表示する。 |
OR条件
OR条件で検索したい場合は「"」(ダブルクォーテーション)で括った中を「 」スペースで区切ることでOR条件で検索する事ができる。
例:先頭が「?」か「!」か「M」で始まる行を抽出する場合。
findstr "^? ^! ^M" [検索対象ファイルのパス]
AND条件
AND条件で検索したい場合は、「|」(パイプ)でつなげていけばいいのだが、1つだけ注意点!!
1つめの条件に対してだけ検索対象ファイルを指定して、2つ目の条件以降(1つめの「|」以降)はAND条件の指定のみ記載する。
例:「!」から始まる行で「error」と「111」を含む行を抽出する場合。
findstr "^!" [検索対象ファイルのパス] | findstr "error" | findstr "111"