1 / 11

FINDSTR コマンドを使った ソースコード検索

FINDSTR コマンドを使った ソースコード検索. 稲垣 智浩 (CatTail). Windows の検索機能. Windows Vista でファイル検索は便利になった でもキーワードが含まれるファイル名が表示されるだけ。 しかも VB のソースファイル (*.vb 、 *.frm) は検索の対象外。 (Windows 2000 までは検索対象だったんだけど ). それぞれの OS で検索してみた. Windows 2000. Windows Vista. それぞれの OS で検索してみた. Windows 2000 *.vb が検索される.

Anita
Download Presentation

FINDSTR コマンドを使った ソースコード検索

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FINDSTRコマンドを使ったソースコード検索 稲垣 智浩(CatTail)

  2. Windowsの検索機能 • Windows Vistaでファイル検索は便利になった • でもキーワードが含まれるファイル名が表示されるだけ。 • しかもVBのソースファイル(*.vb、*.frm)は検索の対象外。 (Windows 2000までは検索対象だったんだけど)

  3. それぞれのOSで検索してみた Windows 2000 Windows Vista

  4. それぞれのOSで検索してみた Windows 2000 *.vbが検索される Windows Vista *.vbが検索されない

  5. きっかけは(VSSで管理されていない)VBのソースファイルから特定のキーワードが含まれるファイルを検索したかった。きっかけは(VSSで管理されていない)VBのソースファイルから特定のキーワードが含まれるファイルを検索したかった。 • 当時、個人でWZ Editorを使用していたこともあり、WZ Editorに含まれるgrep機能を使って検索していた。 • 他のメンバーに展開する場合に、ライセンスの問題や特定のアプリケーションに依存したくなかった。 • Windowsのコマンドを調べているうちにFINDSTR.EXEを発見!

  6. FINDSTR.EXEの使用方法 • コマンドプロンプトを開き、以下のコマンドを入力する。 FINDSTR /S /I 検索キーワード ファイル名  オプションの意味は /S 現在のディレクトリとサブフォルダを検索 /I 大文字と小文字を区別しない。 ※/?オプションを指定するとヘルプが表示される。

  7. 出力結果をクリップボードにコピー • コンソールに出力すると結果がスクロールしてしまう。 • 出力リダイレクトを使ってファイルに出力してもいいけど、何だかスマートではない。 • 調べているうちにCLIP.EXEを発見! FINDSTR /S /I foo *.* | CLIP メモ帳を開き、ペースト。 .NETの場合、日本語が化けてしまいます。これはCLIP.EXEがUNICODEに対応していない(?)からで、とりあえずnkfを使ってS-JISに変換。 FINDSTR /S /I foo *.* | nkf -ic=u -oc=s | CLIP

  8. 検索対象ディレクトリを絞りたい • FINDSTRの/Fオプションを使用。 • 現在のフォルダおよびサブフォルダに含まれるファイル一覧を作成。 DIR /S/B > filelist.txt • メモ帳でfilelist.txtを修正。 • 作成したファイル一覧をFINDSTRで使用する。 FINDSTR /F:filelist.txt /I foo | nkf -ic=u -oc=s | CLIP • 検索結果をメモ帳に貼り付け。

  9. おまけ なぜかWindows Vistaでも存在しているMS-DOSのコマンド群 • EDLIN.EXE 昔はEDLINを使ってCONFIG.SYSやAUTOEXEC.BATを編集しました。(さすがにソースコードの入力まではやっていません) • EDIT.COM DOS/V以降、フルスクリーンエディタが付いてくるようになったのでCONFIG.SYSやAUTOEXEC.BATの編集が楽になった。 • DEBUG.COM FATテーブルが壊れたときに使ったことがあるけど…あと16進数でダンプするときとか。

  10. EDLINでファイルを作成するデモ

  11. これらのコマンドを実行すると、英語モードになってしまうので、日本語モードに戻すにはCHCPコマンドを使って戻します。これらのコマンドを実行すると、英語モードになってしまうので、日本語モードに戻すにはCHCPコマンドを使って戻します。 • コマンドプロンプトで CHCP 932 と入力してください。 以上、ご静聴、ありがとうございました。

More Related