Namazu

namazuコマンドで全文検索をしよう

2009年8月6日


 いよいよ、全文検索をするときだね。インデックスを作成するよりはずっと簡単だから、気楽にね。

namazuで検索してみよう

namazuの構文

namazu 検索文字列 インデックス

インデックスを省略すると、namazu は /usr/local/var/namazu/index を対象とする。

作成されたインデックスに対して検索を行うには namazuコマンドだ。namzu コマンドの使い方だけど、第一引数に検索文字列、第二引数に mknmz で作った索引の位置を入力する。次のような感じでね。

% namazu tohoho /usr/local/apache/var/index

上記の場合、「tohoho」というキーワードで「/usr/local/apache/var/index」にあるインデックス内を検索する。

namazurcでNamazuの動作設定

namazu コマンドの設定は namazurc で行う。 namazurc の設定例は配布の中の /usr/local/etc/namazu/namazurc-sample にあるよ。

ウェブで CGI を実行するにはいくつかの条件があるんだ。Apache の場合、設定として次のようなものが関係する。

ScriptAlias /cgi-bin/ /usr/local/apache/cgi-bin/ URI 中の /cgi-bin/ に対応するディレクトリ
AddHandler cgi-script .cgi .cgi と拡張子ならば cgi として実行する
AllowOverride All .htaccess での設定を許可する (Web管理者)
Options ExecCGI cgi-bin の実行を許す
DirectoryIndex index.html URI がディレクトリを指している時に探すファイル名

(Web管理者) と書かれているもの以外は .htaccess にも設定できるよ(ただし Apache の設定次第でそれを禁止していなければだけど)。


namazuコマンド全レシピ

Namazu の検索プログラム

使い方: namazu [options] <query> [index]...

省略 オプション 対象
-n --max=NUM 一度に表示する件数を指定
-w --whence=NUM 表示する検索結果の先頭番号を指定
-l --list 検索結果を URI・パス名をリストで出力
-s --short 短い書式で出力
  --result=EXT 結果表示に用いる NMZ.result.EXT を指定
  --late 検索結果を新しい順にソート
  --early 検索結果を古い順にソート
  --sort=METHOD ソート方法を指定 (score, date, field:name)
  --ascending ソートの方向を昇順にする (標準は降順)
-a --all 検索結果をすべて表示
-c --count ヒット数のみを表示
-h --html HTMLで出力
-r --no-references 参考ヒット数を表示しない
-H --page 先の検索結果へのリンクを表示 (ほぼ無意味)
-F --form <form> ... </form> の部分を強制的に表示
-R --no-replace URI の置き換えを行わない
-U --no-decode-uri URI encode の復元を行わない
-o --output=FILE 指定したファイルに検索結果を出力
-f --config=FILE 設定ファイルを指定
-C --show-config 設定内容を表示
-q --quiet 検索結果以外のメッセージを表示しない
-d --debug デバッグモード
-v --version ヴァージョンを表示
  --help このヘルプを表示

コマンド行引数の [index dir]... に検索対象のイ ンデックスを指定します。インデックスの指定を省略すると、基本インデックスが検索対象となりま す。

また、 +foo, +bar のように頭に + 記号をつけると、 基本インデックスからの相対パスでインデックスを指定できます。

コマンド行から実行したときは標準では平文で検索結果を出力します。 HTML で出力する場合には -h オプションを指定します。

検索結果の 21 件目から 40 件目までを表示させたいときは -n 20 -w 20 と指定します。-w の値が 21 でないところに注意してくだ さい。


namazurcを設定して検索しよう!

namazurc および .namazurc ではいくつかの設定が行えます。 namazu は

  • $(sysconfdir)/$(PACKAGE)/namazurc
    通常は /usr/local/etc/namazu/namazurc
  • ~/.namazurc
  • -f, --config=FILE オプションで指定した namazurc
    (CGIの場合は namazu.cgi を設置したディレクトリ の .namazurc)

の順で設定ファイルを探して読み込みます。複数、見つかった場合 はすべて読み込みます。

インストール直後の状態では $(sysconfdir)/$(PACKAGE)/namazurc-sample という サンプルファイルが用意されています。これを $(sysconfdir)/$(PACKAGE)/namazurc にコピーする、 あるいは自分のホームディレクトリに ~/.namazurc としてコピー して利用します。

namazurc の設定項目の説明は namazurc-sample ファイルにコメント として書かれています。

Comment

コメントを残す

メールアドレスが公開されることはありません。

関連記事

リズムファクトリーはホームページの制作会社です。
ホームページ制作に関するご要望・ご相談はこちらからどうぞ。

株式会社リズムファクトリーでは現在、下記の職種について人材募集を行っております。
求人をクリックすると「求人情報サイトFind Job!」の求人詳細画面が開きますので、こちらからご応募下さい。

提供 : Webな人の求人情報サイト Find Job!