個人的なメモを記していくためのページです。
cacls . /c /tとするとカレントディレクトリ以下のファイル/フォルダ一覧を出力する。もとはアクセスコントロールの設定をするためのコマンドだけど。
cacls . /c /c > filelist.txtこうして出来た filelist.txt が70Mほどになる。これをgrepで検索する時間は 手元のノートX24+VMware上のlinuxで計ると
$ time grep patt filelist.txt >/dev/null 0.00user 1.16system 0:07.09elapsed 16%CPU (0avgtext+0avgdata 0maxresident)k 0inputs+0outputs (18579major+27minor)pagefaults 0swaps7秒ぐらいならまぁ我慢できないほどではない。でももっと速い方法を試したい。
* 一つのファイルに対する キーワード検索が速い suffix array の実装の一つであるSary: Suffix Arrayのライブラリとツールを試す。
$ perl Makefile.pl $ makeするとincludeファイルが見つからないというので
*** Makefile Wed Apr 14 08:41:17 2004 --- /home/tito/sary-perl-Makefile Wed Apr 14 08:16:03 2004 *************** *** 93,99 **** PARENT_NAME = Search DLBASE = $(BASEEXT) VERSION_FROM = Saryer.pm ! INC = OBJECT = $(BASEEXT)$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamic --- 93,99 ---- PARENT_NAME = Search DLBASE = $(BASEEXT) VERSION_FROM = Saryer.pm ! INC = -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/local/include/sary OBJECT = $(BASEEXT)$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamicのMakefileの修正をしてmakeするとビルドは通る。しかしmake testで100%失敗する。なぜだ! 詳細
Search-Saryerがインストールできなかったのはsaryをmake installしてなかったから
というオチでした。