搜索测试工具
Quest 是搜索测试工具,提供了搜索相关的各项功能,非常适合用于前期测试比较和纠错。
运行脚本工具的 --help 选项可查看内置的帮助和说明,如乱码可在选项后加入 -c gbk 试试。
$prefix/sdk/php/util/Quest.php --help
1. 主要参数和选项
和索引工具类似,使用前必须先指定的项目名称或配置文件,所有的操作都将是作用于该项目,
主要选项如下:
-p|--project 指定项目名称或配置文件路径,参数名可以省略不写,
如果仅指定项目名称,那么将使用 $prefix/sdk/php/app/.ini 文件。
-c|--charset 指定当前环境、查询语句的字符集,默认情况下,
搜索工具输出的字符集为 utf-8,并把搜索语句字符集视为项目的默认字符集。
-q|--query <..query..> 指定要搜索的查询语句,如果语句中包含空格请用使用双引号包围起来。
--hot[=total|last|cur] 用于显示指定项目的热门搜索词,此时 query 参数无意义。
选项值含义分别表示总搜索量、上周搜索量、本周搜索量,默认为总搜索量。
--suggest、--correct、--related 是搭配 query 的一些功能选项。
--limit=<..num..> 用于设置各种检索功能的返回数量最大上限,默认值均为 10 个。
对于普通搜索模式,还支持用 --limit=offset,num 来同时指定偏移量和上限。
-d|--db 指定要搜索的数据库名称,默认是名为 db 的库,
多个库之间用逗号分隔。
--show-query 在搜索结果显示内部的 Xapian 结构的 query 语句用于调试
--synonym 启用自动同义词搜索,这依赖于您的同义词库设置
2. 经典用法示例
以下是一些经典用法举例:
# 搜索 demo 中包含 "测试" 的数据
util/Quest.php demo 测试
# 搜索 demo 中包含 "测试" 的数据,并限制最多返回 2 条结果
util/Quest.php -p demo -q 测试 --limit=2
# 列出 demo 项目中以 "x" 开头的搜索建议
util/Quest.php --suggest demo x
# 在 demo 项目中修正搜索词 "xm"
util/Quest.php --correct demo xm
# 在 demo 中列出和 "测试" 相关的搜索词
util/Quest.php --related demo 测试
# 查看 demo 项目上周的 5 条最热门搜索词
util/Quest.php --hot=last --limit=5 demo
3. 查看同义词表
使用 --list-synonyms 可以列出当前库的全部同义词记录,此选项不需要带参数。
但特殊参数值 stemmed 表示同时列出隐藏的词根同义词。结合选项 --limit
可以设置返回的数量和偏移量,默认只返回前 100 个。例如:
# 默认查看当前库的前 100 个同义词记录
util/Quest.php demo --list-synonyms
# 查看当前库第 6~10 条同义词记录
util/Quest.php demo --list-synonyms --limit 5,5
# 查看包含隐藏同义词根在内的记录
util/Quest.php demo --list-synonyms=stemmed
Tip: 同义词功能是 1.3.0 版本引入的新功能,详情参见同义词专题文档。
添加、删除同义词的功能请参见 Indexer 索引工具
词根同义词是自动生成的,以大写字母 Z 开头,请勿试图进行删除
$Id$