文件查找工具Everything使用笔记
一、关于Everything
Everything是一个Windows上的文件搜索引擎,支持按文件名和目录名搜索文件和目录。Everything在每次启动时根据系统内文件建立一个文件索引,并在文件或目录发生变更时更新这个索引,并根据这个索引对输入的文件名进行查找。Everything可以运行在下列操作系统中:Windows XP, Vista, Windows 7 and Windows 8,并只能索引本地NTFS分区,不支持FAT32、FAT16分区。Everything是一个免费软件。
更加详细的介绍可以参考Everything官方网站上的说明页:http://www.voidtools.com/faq/#What_is_Everything
我还在网上找了一版翻译后的FAQ,网页地址为:http://xbeta.info/everything/faq.htm#What_is__Everything
Everything程序界面如下:
我使用的Everything版本为:Version 1.3.4.686 (x86)
二、基本用法总结
1、按下Esc键可以让程序最小化到托盘,双击托盘中的图标可以重新显示Everything应用程序。
2、Everything的程序界面及界面上各部分功能如下图所示:
3、【File】菜单下的【New Search Window】(Ctrl+N)可以打开一个全新的Everything查询界面,不同的查询界面分属不同的进程,但托盘区显示的图标只有一个。
4、【File】菜单下的【Export】(Ctrl+S)可以导出当前的查询结果,导出的文件类型分为3种:CSV文件、EFU文件、TXT文件。只有EFU文件可以被Everything再次读取,读取的方法为点击【File】菜单下的【Open File List】(Ctrl+O)。
以搜索文件“clrver.exe”为例,查找结果为:
保存到CSV文件后,CSV文件中的文本为:
"Name","Path","Size","Date Modified" "clrver.exe","C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin","62792","2011/12/12 13:55" "clrver.exe","C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools","62792","2010/3/19 8:02" "clrver.exe","C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools","84904","2012/7/9 0:40"
保存到EFU文件后,EFU文件中的文本为:
Filename,Size,Date Modified,Date Created,Attributes "C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\clrver.exe",62792,129681429260000000,129681429260000000,32 "C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\clrver.exe",62792,129134305640000000,129134305640000000,32 "C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\clrver.exe",84904,129862392100000000,129862392100000000,32
保存到TXT文件后,TXT文件中的文本为:
C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\clrver.exe C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\clrver.exe C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\clrver.exe
5、【Edit】菜单下的【Select All】(Ctrl+A)功能可以全选所有的查询结果,【Invert Selection】功能可以全选所有当前未选中的查询结果,同时取消选则所有当前选中的查询结果。
6、【Search】菜单下的四个匹配控制项:
【Match Case】(Ctrl+I):勾选后精确匹配文件名中英文字母的大小写
【Match Whole Word】(Ctrl+B):勾选后只查询文件名完全匹配的文件,如果被搜索文件名中不包含扩展名,则不匹配扩展名,否则匹配
【Match Path】(Ctrl+U):勾选后当被搜索字符串中包含字符“\”时匹配文件路径
【Match Diacritics】(Ctrl+M):匹配变音符号,如不勾选,包含变音符号的字符会被转换为ASCII码进行匹配
7、【Search】菜单下的【Enable Regex】(Ctrl+R)支持在搜索框中输入正则表达式,在Everything中正则表达式的规则详见【Help】菜单下的【Regex Syntax】。
8、【Search】菜单下的【Add to Filters...】功能可以自定义一个过滤器(Filter),在【Organize Filters...】功能中可以管理这些自定义的过滤器。每一个过滤器都有以下部分组成:
Name:过滤器的名字
Match系列复选框(包括case、whole word、path、diacritics四项,功能和上面第6条描述相同)
Regex复选框:指示是否需要将输入视作正则表达式
Search:输入的查询参数
Macro:宏名,指定一个标识符为一个Filter的宏,搜索时输入宏名再加一个半角冒号“:”即可使用当前过滤器查询结果。如果不需要使用这个功能,不填写即可
Keyboard Shortcut:快捷键
9、Everything安装时就默认了8个过滤器,分别是:
1)Everything,无任何附加条件,可以查询到系统内的全部文件
2)Audio(宏:audio),可以查询到以下类型的文件:
ext:aac;ac3;aif;aifc;aiff;au;cda;dts;fla;flac;it;m1a;m2a;m3u;m4a;mid;midi;mka;mod;mp2;mp3;mpa;ogg;ra;rmi;spc;rmi;snd;umx;voc;wav;wma;xm
3)Compressed(宏:zip),可以查询到以下类型的文件:
ext:7z;ace;arj;bz2;cab;gz;gzip;r00;r01;r02;r03;r04;r05;r06;r07;r08;r09;r10;r11;r12;r13;r14;r15;r16;r17;r18;r19;r20;r21;r22;r23;r24;r25;r26;r27;r28;r29;rar;tar;tgz;z;zip
4)Document(宏:doc),可以用来查询到以下类型的文件:
ext:c;chm;cpp;csv;cxx;doc;docm;docx;dot;dotm;dotx;h;hpp;htm;html;hxx;ini;java;js;lua;mht;mhtml;odt;pdf;potx;potm;ppam;ppsm;ppsx;pps;ppt;pptm;pptx;rtf;sldm;sldx;thmx;txt;vsd;wpd;wps;wri;xlam;xls;xlsb;xlsm;xlsx;xltm;xltx;xml
5)Executable(宏:exe),可以用来查询到以下类型的文件:
ext:bat;cmd;exe;msi;scr
6)Folder(宏:folder),查询所有目录
7)Picture(宏:pic),可以用来查询到以下类型的文件:
ext:ani;bmp;gif;ico;jpe;jpeg;jpg;pcx;png;psd;tga;tif;tiff;wmf
8)Video(宏:video),可以用来查询到以下类型的文件:
ext:3g2;3gp;3gp2;3gpp;amr;amv;asf;avi;bdmv;bik;d2v;divx;drc;dsa;dsm;dss;dsv;evo;f4v;flc;fli;flic;flv;hdmov;ifo;ivf;m1v;m2p;m2t;m2ts;m2v;m4b;m4p;m4v;mkv;mp2v;mp4;mp4v;mpe;mpeg;mpg;mpls;mpv2;mpv4;mov;mts;ogm;ogv;pss;pva;qt;ram;ratdvd;rm;rmm;rmvb;roq;rpm;smil;smk;swf;tp;tpr;ts;vob;vp6;webm;wm;wmp;wmv
10、【Organize Filters...】具备对当前Everything程序内所有过滤器进行导出、导入的功能,导出后的过滤器为CSV格式。
下面的内容是将第9条内的8个过滤器导出后生成的CSV文件内容:
Name,Case,Whole Word,Path,Diacritics,Regex,Search,Macro,Key "EVERYTHING",0,0,0,0,0,"",, "AUDIO",0,0,0,0,0,"ext:aac;ac3;aif;aifc;aiff;au;cda;dts;fla;flac;it;m1a;m2a;m3u;m4a;mid;midi;mka;mod;mp2;mp3;mpa;ogg;ra;rmi;spc;rmi;snd;umx;voc;wav;wma;xm","audio", "COMPRESSED",0,0,0,0,0,"ext:7z;ace;arj;bz2;cab;gz;gzip;r00;r01;r02;r03;r04;r05;r06;r07;r08;r09;r10;r11;r12;r13;r14;r15;r16;r17;r18;r19;r20;r21;r22;r23;r24;r25;r26;r27;r28;r29;rar;tar;tgz;z;zip","zip", "DOCUMENT",0,0,0,0,0,"ext:c;chm;cpp;csv;cxx;doc;docm;docx;dot;dotm;dotx;h;hpp;htm;html;hxx;ini;java;js;lua;mht;mhtml;odt;pdf;potx;potm;ppam;ppsm;ppsx;pps;ppt;pptm;pptx;rtf;sldm;sldx;thmx;txt;vsd;wpd;wps;wri;xlam;xls;xlsb;xlsm;xlsx;xltm;xltx;xml","doc", "EXECUTABLE",0,0,0,0,0,"ext:bat;cmd;exe;msi;scr","exe", "FOLDER",0,0,0,0,0,"folder:",, "PICTURE",0,0,0,0,0,"ext:ani;bmp;gif;ico;jpe;jpeg;jpg;pcx;png;psd;tga;tif;tiff;wmf","pic", "VIDEO",0,0,0,0,0,"ext:3g2;3gp;3gp2;3gpp;amr;amv;asf;avi;bdmv;bik;d2v;divx;drc;dsa;dsm;dss;dsv;evo;f4v;flc;fli;flic;flv;hdmov;ifo;ivf;m1v;m2p;m2t;m2ts;m2v;m4b;m4p;m4v;mkv;mp2v;mp4;mp4v;mpe;mpeg;mpg;mpls;mpv2;mpv4;mov;mts;ogm;ogv;pss;pva;qt;ram;ratdvd;rm;rmm;rmvb;roq;rpm;smil;smk;swf;tp;tpr;ts;vob;vp6;webm;wm;wmp;wmv","video",
11、【Bookmarks】菜单下的【Add to Bookmarks...】功能可以设置一个新的书签,书签内包含当前程序中的所有设置,【Organize Bookmarks...】功能可以管理这些书签,并对书签进行导出、导入操作。导出后的书签为CSV格式,内容非常简约明了,下面就是一个导出后的书签内容:
Name,Case,Whole Word,Path,Diacritic,Regex,Sort,Descending,Filter,Search,Index,File List,Host,Link Type,Macro,Key
12、【Help】菜单内提供了Everything程序的帮助信息
【Everything Help】(F1)是一个比较详细的在线帮助网页,该菜单链接到网址:http://www.voidtools.com/support/everything/
【Search Syntax】说明了在搜索框中输入的语法细节
【Regex Syntax】说明了在搜索框中使用的正则表达式拼写规则
【Command Line Options】说明了在命令行(cmd)中调用Everything.exe时可以添加的参数及其效果
三、附录
附A - 查询相关语法 - Search Syntax
(摘自【Help】菜单下的【Search Syntax】)
Operators: space AND | OR ! NOT < > Grouping " " Search for an exact phrase. Wildcards: * Matches zero or more characters. ? Matches one character. *.* Same as * Macros: quot: Literal double quote (") apos: Literal apostrophe (‘) amp: Literal ampersand (&) lt: Literal less than (<) gt: Literal greater than (>) #x: Literal unicode character x code. Modifiers: ascii: Enable fast ASCII case comparisons. case: Match case. diacritics: Match diacritical marks. file: Match files only. folder: Match folders only. noascii: Disable fast ASCII case comparisons. nocase: Do not match case. nodiacritics: Do not match diacritical marks. nofileonly: Do not allow files only. nofolderonly: Do not allow folders only. nopath: Do not match path. noregex: Disable regex. nowfn: Do not match the whole filename. nowholefilename: Do not match the whole filename. nowholeword: Do not match whole words only. nowildcards: Disable wildcards. noww: Do not match whole words only. path: Match path and file name. regex: Enable regex. utf8: Disable fast ASCII case comparisons. wfn: Match the whole filename. wholefilename: Match the whole filename. wholeword: Match whole words only. wildcards: Enable wildcards. ww: Match whole words only. Functions: attrib:<attributes> Search for files and folders with the specified file attributes. attributes:<attributes> Search for files and folders with the specified file attributes. child:<filename> Search for folders that contain a child with a matching filename. dateaccessed:<date> Search for files and folders with the specified date accessed. datecreated:<date> Search for files and folders with the specified date created. datemodified:<date> Search for files and folders with the specified date modified. daterun:<date> Search for files and folders with the specified date run. da:<date> Search for files and folders with the specified date accessed. dc:<date> Search for files and folders with the specified date created. dm:<date> Search for files and folders with the specified date modified. dr:<date> Search for files and folders with the specified date run. dupe: Search for duplicated filenames. empty: Search for empty folders. ext:<list> Search for files with a matching extension in the specified semi-colon delimited extension list. fsi:<index> Search for files and folders in the specified zero based internal file system index. len:<length> Search for files and folders that match the specified filename length. parents:<count> Search for files and folders with the specified number of parent folders. rc:<date> Search for files and folders with the specified recently changed date. recentchange:<date> Search for files and folders with the specified recently changed date. root: Search for files and folders with no parent folders. runcount:<count> Search for files and folders with the specified run count. size:<size> Search for files with the specified size in bytes. type:<type> Search for files and folders with the specified type. Function Syntax: function:value Equal to value. function:<=value Less than or equal to value. function:<value Less than value. function:=value Equal to value. function:>value Greater than value. function:>=value Greater than or equal to value. function:start..end Is in the range of values from start to end. function:start-end Is in the range of values from start to end. Size Syntax: size[kb|mb|gb] Size Constants: empty tiny 0 KB < size <= 10 KB small 10 KB < size <= 100 KB medium 100 KB < size <= 1 MB large 1 MB < size <= 16 MB huge 16 MB < size <= 128 MB gigantic size > 128 MB unknown Date Syntax: year month/year or year/month depending on locale settings day/month/year, month/day/year or year/month/day depending on locale settings Date Constants: today yesterday tomorrow <last|past|prev|current|this|coming|next><year|month|week> <last|past|prev|coming|next><x><years|months|weeks|hours|minutes|mins|seconds|secs> january|february|march|april|may|june|july|august|september|october|november|december jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec sunday|monday|tuesday|wednesday|thursday|friday|saturday sun|mon|tue|wed|thu|fri|sat unknown Attribute Constants: A Archive C Compressed D Directory E Encrypted H Hidden I Not content indexed L Reparse point N Normal O Offline P Sparse file R Read only S System T Temporary V Device
附B - 正则表达式应用语法Regex Syntax
(摘自【Help】菜单下的【Regex Syntax】)
Regex Syntax: a|b Matches a or b gr(a|e)y Matches gray or grey . Matches any single character [abc] Matches a single character a, b or c [^abc] Matches any single character except a, b or c [a-z] Matches a single charactor in the range a to z [a-zA-Z] Matches a single charactor in the range a to z or A to Z ^ Matches the start of the filename $ Matches the end of the filename * Matches the preceding element zero or more times ? Matches the preceding element zero or one times + Matches the preceding element one or more times {x} Matches the preceding element x times {x,} Matches the preceding element x or more times {x,y} Matches the preceding element between x and y times
附C - 命令行选项 - Command Line Options
(摘自【Help】菜单下的【Command Line Options】)
Everything.exe [filename] [options] filename Open the specified file list. -? Show this help. -admin Run Everything as Administrator. -admin-server-share-links Use \\Server\C$ links for ETP connections. -app-data Store data in application data. -bookmark <name> Open a bookmark. -case Enable case matching. -choose-language Show the language selection page. -choose-volumes Do not automatically index volumes. -config <filename> The filename of the ini file. -connect <user:pass@host:port> Connect to an ETP server. -console Show the debugging console. -create-filelist <filename> <path> Create a file list of a path. -db <filename> The filename of the database. -debug Show the debugging console. -diacritics Enable diacritics matching. -disable-run-as-admin Disable run as administrator. -disable-update-notification Disable update notification on startup. -drive-links Use C: links for ETP connections. -edit <filename> Open a file list with the file list editor. -enable-run-as-admin Enable run as administrator. -enable-update-notification Enable update notification on startup. -exit Exit "Everything". -filelist <filename> Open a file list. -filename <filename> Search for a file or folder by filename. -filter <name> Select a search filter. -ftp-links Use ftp://host/C: links for ETP connections. -fullscreen Show the search window fullscreen. -h Show this help. -help Show this help. -install <location> Install Everything to a new location. -install-client-service Install the "Everything" client as a service. -install-config <filename> Install the specified ini file. -install-desktop-shortcut Install desktop shortcut. -install-efu-association Install EFU file association. -install-folder-context-menu Install folder context menus. -install-quick-launch-shortcut Install Quick Launch shortcut. -install-run-on-system-startup Install "Everything" from the system startup. -install-service Install and start the "Everything" service. -install-service-port <port> Install the Everything service on the specified port. -install-start-menu-shortcuts Install "Everything" shortcuts from the Start menu. -install-url-protocol Install URL Protocol. -instance <name> The name of the Everything instance. -load-delay <milliseconds> The delay in milliseconds before loading the database. -l Load the local database. -language <langID> Set the language to the specified language ID. -local Load the local database. -matchpath Enable full path matching. -maximized Maximize the search window. -minimized Minimize the search window. -newwindow Create a new search window. -noapp-data Store data in executable location. -nocase Disable case matching. -nodb Do not save to or load from the "Everything" database file. -nodiacritics Disable diacritics matching. -nofullscreen Show the search window in a window. -nomatchpath Disable full path matching. -nomaximized Unmaximize the search window. -nominimized Unminimize the search window. -nonewwindow Show an existing search window. -noontop Disable always ontop. -noregex Disable Regex. -noverbose Display only basic debug messages. -nowholeword Disable match whole word. -noww Disable match whole word. -ontop Enable always ontop. -p <path> Search for a path. -parentpath <path> Search for the parent of a path. -path <path> Search for a path. -quit Exit "Everything". -read-only Loads the database in read-only mode. -regex Enable Regex. -reindex Force database rebuild. -s <text> Set the search. -search <text> Set the search. -server-share-links Use \\Server\C: links for ETP connections. -service-port <port> Connect to the Everything service on the specified port. -sort <name> Set the sort to the specified name. -sort-ascending Sort ascending. -sort-descending Sort descending. -start-client-service Start the Everything client service. -start-service Start the Everything service. -startup Run Everything in the background. -stop-client-service Stop the Everything client service. -stop-service Stop the Everything service. -svc Run Everything as a service. -svc-port <port> Run the Everything service on the specified port. -uninstall [path] Uninstall Everything from the specified path. -uninstall-client-service Uninstall the "Everything" client service. -uninstall-desktop-shortcut Uninstall desktop shortcut. -uninstall-efu-association Uninstall EFU file association. -uninstall-folder-context-menu Uninstall folder context menus. -uninstall-quick-launch-shortcut Uninstall Quick Launch shortcut. -uninstall-run-on-system-startup Remove "Everything" from the system startup. -uninstall-service Uninstall the "Everything" service. -uninstall-start-menu-shortcuts Uninstall "Everything" shortcuts from the Start menu. -uninstall-url-protocol Uninstall URL Protocol. -uninstall-user Uninstall user files. -update Save the database to disk. -url <[es:]search> Set the search from an ES: URL. -verbose Display all debug messages. -wholeword Enable match whole word. -ww Enable match whole word.
END