優柔不断なプログラマの日記

思いつきでポチポチ書きます

前日の閲覧数
55PV
+SHARE
Twitter Facebook RSS

(Windows)Windowsでgrepする = findstr

Windowsにはgrepがありません。
うっかりこういうことをしてしまう。

C:>net start |grep -i tel
'grep' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

いつもなら、あ〜無いんだった。と別の方法に逃げるところですが、今日はついムキになってgrep探しの旅です。
いくらGUIなWindowsでも、grepぐらいある(誰かが作っている)のは、うすうす気づいていました。ググルと、トップにvectorヒット。「Windows版Grep(コマンドライン用)」。お、いきなりnot GUIなツールがヒットです。
説明を読んでみる。“正規表現”“再帰”。うむ、これでよさそう。早速ダウンロードして解決、と思いきや。

パイプが使えない。

なんでだよー。パイプで使うよね。使えなきゃダメっす。ということで却下。

他にもGNU grepってあるからこれか!と思い試すとインストールした上、.netが必要。そしてまたしてもパイプ非対応。
うむむー、パイプ使う人は小数派なのか・・・

グーグル結果を眺めていると、ありました。

findstrで正規表現を検索する
http://www.atmarkit.co.jp/fwin2k/win2ktips/511findstr/findstr.html

まんまgrepじゃないですか。

C:>net start|findstr -i tel
   Background Intelligent Transfer Service
   Telephony
   Telnet

解決しました。


 

ジャンル:
ウェブログ
キーワード:
コマンドライン外部コマンド

プログラミング」カテゴリの最新記事

コメント

  • Unknown
  • (Unknown)
  • 2009-04-03 16:16:27
  • 参考にさせていただきました。感謝します。

    うちはついでに
    %%WINDWOS%%/system32/grep.bat
    って作って
    中身に「findstr -i %1」を記述したファイルを置いてます。
    これで
    >dir | grep aaa.txtが
    >dir | findstr -i aaa.txtに置き換わってちょっと幸せ

  • Unknown
  • (通りがかかり)
  • 2009-09-10 15:31:04
  • あ、これは知ってると、ちょっと嬉しいですね。
    ありがとうございました。

  • Unknown
  • (Unknown)
  • 2009-10-16 10:54:34
  • grepで探すからまともなものが見つからない。unix-like, tool とかで探せば、grepだけじゃなく、unix-likeなコマンド群がセットで見つかる。

    findstr optionとかgrepと違いすぎて俺には違和感あった。