Windows平台上有个软件叫做Everything
很是受好评,用来快速地根据文件名搜索文件。
Linux平台上功能与之类似的程序叫做locate
。
updatedb
命令用来建立文件索引数据库locate
命令用来进行文件名查询# Linux version of Everything on Windows updatedb --require-visibility 0 -o ~/locate.db && chmod 600 ~/locate.db # -l, --require-visibility FLAG locate -d ~/locate.db $pattern setenv LOCATE_PATH ~/locate.db locate $pattern locate -b $pattern ;# match base name locate -w $pattern ;# match whole path (default) locate -r $regexp ;# match with regexp # Show database statistics locate -S
其中--require-visibility 0
的作用是避免错误信息:updatedb: can not open a temporary file for ...
使用locate
的原因显然是因为每次查询都使用find
命令的话,查询速度太慢了。
TODO