[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:19798] Plamo なファイルを検索くん
-
From:KAMOSAWA, Masao
-
Date:Fri, 25 Jul 2003 23:51:02 +0900 (JST)
- Subject: [plamo:19798] Plamo なファイルを検索くん
- From: "KAMOSAWA, Masao" <yaegr@xxxxxxxxxxxxxxxxx>
- Date: Fri, 25 Jul 2003 23:50:50 +0900
鴨澤です。
ずっと前にご好評いただき気味だった http://plamo.minidns.net/ (←最近 DNS が
死に気味なので、アクセスできないときは少し待ってからリロードしてください)の
全ファイル、全パッケージから検索する機能ですが、ようやくローカル環境でも
使えるコマンドに仕立てられました。
興味のある方、
http://plamo.minidns.net/packages.shtml
の一番上にある lacking というパッケージと、その下にある Sary という
パッケージを使ってみてくださいませ。
lacking は検索コマンドで、
$ lacking 足りないファイル
とやるだけで、そのファイルを含むパッケージを表示します。
対象は Plamo のインストール、contrib に入ってる全ファイルです。
lacking は、ファイル=パッケージ対応リストを検索するコマンドです。
対応リストを grep で検索することもできますが、涙が出るほど遅いのと、
使い勝手を考えて独立コマンドとしました。
これは試作バージョン2で、Sary を必要とするようになりました。
Sary は Suffix Array というインデックス構造を扱うパッケージです。
高速全文検索に便利なデータ構造ですが、lacking ではファイル名のみを
対象にインデックスを作っているので、パッケージからの逆引きなどには
対応していません。これはインデックスファイルのサイズの問題です。
ちなみに試作バージョン1 は awk スクリプトで、grep よりは10倍速いんですが、
sary を使うとさらに10倍近く速くなるので、これを使ってみました。
パッケージは、このコマンド本体と、Plamo の各バージョンに合わせた対応リストを
組み合わせたものです。
まだまだ試作品なので、いくらか問題があります。
・対応リストのファイルが巨大
配布パッケージでは圧縮してありますが、インストールすると膨れ上がります。
これは sary が圧縮データを扱えないためです。
gzip 圧縮したまま zgrep で検索をかけても遅くならないようなマシンなら、
その方が良いかもしれません。
・ファイル名からの検索しか出来ない
上でも書いた通り、全文検索はされないので、パッケージ名からファイルを
逆引きできません。
・我が家でのみ動作確認済み
インストールテストはしてみてありますが、本当にこれだけで動くという
確信がありません。
というわけで、もし使ってみられた方がいらっしゃれば、ぜひご意見、
ご感想をお寄せいただけるとありがたいです。
よろしくおねがいします。
鴨澤眞夫
- Follow-Ups
-
- [plamo:19822] Re: Plamo なファイルを検索くん, KAMOSAWA, Masao
[検索ページ]
[メール一覧]
Plamo ML 公開システム