[PocketCafe トップ] [Pocketに書斎][Pocket日記] [Mail]

GREPで簡単文書検索

-PWZ Editorを使うA-

作成日 99/08/01
更新日 99/08/01

★どこに置いたか、あのファイル

埋もれた文書を探すのは、骨が折れる作業です。ファイル名を忘れたり、保存したディレクトリを間違えたりすると、見つけるのに一苦労です。大量に文書を作成する人ほど、その大変さは身にしみていることだと思います。
ファイル名や作成日時を憶えていれば、OSの検索機能で何とか探し出すこともできますが、「確かこんな内容だった」程度しか憶えていなければ、もうお手上げです。
また、何千行もある巨大な文書の場合、文書のどのあたりに、目的の箇所があるかを突き止めるのは、不可能です。
 
こんな時に威力を発揮するのが、GREPと呼ばれる検索ツールです。

◆GREPって何?

PWZに限らず、エディタには、GREPという機能が備わっています。
GREPとは、同一ディレクトリ(フォルダ)内にあるすべてのテキストファイルから、指定の文字列を検索し、表示するプログラムです。
OSが備えている検索機能は、ファイル名やファイルの作成日時を元に検索をかけますが、GREPは、テキスト文書内の文字列を元に、検索をかけます。
文字列が見つかると、見つかった文字列を含む行をリストアップしてくれます。

残念ながら、標準でついてくるツールではないため、GREPを使いたければ、エディタをインストールするしかありません。CE用にも、PWZ以外に様々なエディタがあるので、ひとつ、購入されることをお勧めします。また、Windowsでも、WZや秀丸などのエディタに、同様の機能があります。
(※GREPで検索できるのは、*.txtや*.htmlなどのテキストファイルだけです。エクセルファイルなど、バイナリファイルの検索はできません)

◆使うのは簡単

製品によって若干、画面レイアウトは変わりますが、基本は同じです。

1.検索する文字列を指定する
次のMS-DOSワイルドカードを使用することができます。

? 任意の1文字
* 任意の文字列


*.* すべてのファイル
*.txt 拡張子が「txt」のファイル
99070?.txt ファイル名が「99070」で始まる半角8文字の、拡張子が「txt」のファイル
a*.txt ファイル名が 「a」で始まる、拡張子が「txt」のファイル

2.検索ディレクトリを指定する
どこの保存しているかわからない場合、ルートディレクトリを指定することで、ローカルハードディスク内のすべてのテキストファイルを検索できます。ディレクトリがわかっている場合は、
「C:\Data」や「\Storage Card\Data」
というように指定してあげた方が、検索速度が速くなります。

PWZ GREPでの文字列指定画面
PWZ Grepの指定画面

検索結果表示画面
検索結果

文字列をダブルタップしますと、タグジャンプ機能が働いて、目的の文書が開きます。

◆GREPで構築するテキストデータベース

GREPを使えば、どこに置いたかわからないファイルも容易に探せますが、発想を転換すれば、
「書いた文書を分類せずに同一フォルダに貯めておき、必要に応じて検索をかけて探し出す」
といったデータベース的な使い方ができます。検索は、コンピュータの得意分野なのだから、テキスト文書保存するときに、ファイル名をどうしようかで悩んだり、下手にディレクトリをつくって分類したりしなくてもよいのです。とりあえず、投げ込んでおけばいい。理由は、次のふたつです。

1.ファイル名で分類するのは難しい
だいたい、文書内容にぴったりなファイル名を付けること自体、難しいことです。特に、似たような文書の場合、そのときのフィーリングで名前を付けていることが多いのではないでしょうか?
また、厳密にファイル名をつけたとしても、悲しいかな、大量にある文書の内容とファイル名が対応しきれません
さらに言うと、Windows95以降、ロングファイル名が使えるようになりましたが、トラブルがあってDOSのcopyコマンドなんかを使う場合、DOSは半角8文字までのファイル名にしか対応していないので、「映画批評Vol6.txt」のような長い名前だと、「映画批~1.txt」なんて名前にリネームされてしまいます。

2.フォルダで分類するのは不可能に近い
野口悠紀雄氏も、その著書『超整理法』で述べられていますが、情報の分類には、原理上の問題があって、安易に分類しようとしても、すぐに破綻します。たとえば、「土地」と「税」という分類があったとして、「土地税制」の資料はどちらに分類するのか?(こうもり問題) とか、まちがった分類に入れてしまったために検索できなくなってしまう(誤入問題)など。例を挙げれば、きりがありません(野口悠紀雄『超整理法』中公新書1159、1993年、九頁)。

だから、活用法としては、

1.ファイル名は簡潔に付ける
2.データは1箇所に貯める

この2点につきます。
僕は、データ保管用にひとつフォルダをつくり、データはすべて、このフォルダにまとめています。GREP検索するときは、ルートフォルダであるdataフォルダを指定すればいいわけです。

data(保管用のルートフォルダ)
┣office(特に仕事関係の資料)
┣personal(特に個人的な資料)
┣novell(ダウンロードしたオンラインノベル)
┣・・・

必要に応じてサブフォルダも使いますが、分類は大雑把です。ややこしいものは、すべて、dataに保存します。

こういう風にGREPを使えば、テキストファイルだけでも、十分、データベースが構築できます。

[戻る]




[PR]今流行りの携帯ゲームは?:完全無料でずっと遊び放題だよ