2005/4/1

利用 lucene 製作自己的磁碟檔案資料搜尋工具

先前曾經用 lucene 製作網站上的搜尋功能,最近因應老友Timothy的要求,希望我幫他找到一個搜尋工具。

根據他的要求,他在寫BIOS程式時都是用ASM組合語言,但因為組合語言目前沒有像Java一樣,有許多大廠幫忙製作適當又好用的IDE,例如:Eclipse、JBuilder,所以他現在還得用簡單的文字處理工具寫程式,在這種情況下,常常需要在專案裡面搜尋哪個檔案有什麼特定字串。

他說Windows的搜尋功能,或是Norton的FileFind速度超慢,時間就是金錢,如果沒有好的工具,再有耐心的人,也會一下子被消磨殆盡。

這時候就是 lucene 上場的最佳時機。我用CLI作了兩個工具,Crawler與Searcher。

搜尋的結果我把他做成html檔,就像這樣。但說真的我還沒把 lucene 完全搞清楚。











序號 檔案名稱 搜尋結果
1 D:\project\test\InitialServlet.java (realPath);
40 
41  //Counter counter=new Counter();
42  //namingService.setAttribute( "counter" , counter);
43


---online helper-----
usage: java org.cmat.fsearcher.Crawler [-i Lucene_index_directory] [-d
crawler_depth] [-ex file_extension] [-in file_extension] [-h] [-t
target_file_directory]
-d,--depth crawler depth
-ex,--exclude excluding file extension
-h,--help print help message
-i,--indexdir specify index directory.
default: lucene/
-in,--include including file extension
-t,--target specify target file directory


usage: java org.cmat.fsearcher.Searcher [-i Lucene_index_directory] [-q
query_string] [-h] [-r result_html]
-h,--help print help message
-i,--indexdir specify index directory.
default: lucene/
-q,--query query string
-r,--result result output html filename.
default: result.html