今天我给大家分享一款特别好用,非常强大的文件搜索软件,它就是Everything。可能有些人已经用过或者听说过,有些人可能没听说过,无论何种情况,都无关紧要。接下来,我将给大家详细地介绍Eveything的各种用法,一起来体验这款强大的软件吧!
一、软件及文档下载
首先,我们需要去Everything官方主页下载该软件,下载链接如下:
http://www.voidtools.com/downloads
在该页面中,包含了Everything软件包、命令行接口、SDK开发包及离线chm文档等,大家按需下载即可。
二、正则表达式语法
正则表达式是一种文本检索方式,它由一些普通字符和一些元字符组成。熟悉Unix系统和Linux系统的朋友们估计对它不陌生。一些程序语言,像perl, python, .net, powershell、shell等,也实现了该功能。当然啦,Everything也集成了这一强大的功能。以下是Eveything包含的正则表达式语法:
- a|b:匹配a或b字符。
- gr(a|e)y:匹配gray或grey单词。
- .:匹配任一单个字符。
- [abc]:匹配a,b,c中任意单个字符。
- [^abc]:匹配除a,b,c以外的任意单个字符。
- [a-z]:匹配a-z范围内的任意单个字符。
- [a-zA-Z]:匹配大小写字母中任意单个字符。
- ^:匹配文件名的开头。
- $:匹配文件名的结尾。
- ( ):定义一个标记子组。
- \n:匹配第n个标记的子组匹配的内容,其中n是1到9之间的数字。
- \b:匹配单词边界
- *:匹配任意次数前面的元素。
- ?:匹配0次或1次前面的元素。
- +:匹配1至多次前面的元素。
- *?:懒惰地匹配前面的元素任意次。
- +?:懒惰地匹配前面的元素1至多次。
- {x}:匹配前面元素x次。
- {x,}:匹配前面元素至少x次。
- {x,y}:匹配x-y范围内的前面元素。
- \:转义字符。
三、搜索语法
Everything定义了一组搜索文件的语法,该语法分为5个类别,分别是:操作符、通配符、宏、修饰符、函数。语法如下所示:
3.1操作符:
- space(空格):与(AND)
- |:或(OR)
- !:非(NOT)
- < >:分组
- " ":搜索精确的短语。
3.2通配符:
- *:匹配0至多个字符
- ?:匹配任意单个字符。
3.3宏
- quot:字面双引号 (")。
- apos:字面单引号 (')。
- amp:字面&符号(&)。
- lt:字面小于号(
- gt:字面大于号 (>)。
- #:以十进制显示的字面Unicode字符。
- #x:以十进制显示的字面Unicode字符。
- audio:搜索音频文件。
- zip:搜索压缩文件。
- doc:搜索文档文件。
- exe:搜索可执行文件。
- pic:搜索图片文件。
- video:搜索视频文件。
3.4修饰符:
- ascii:禁用快速的ASCII大小写比较。
- case:区分大小写。
- diacritics:匹配变音符号。
- file:仅匹配文件
- folder:仅匹配文件夹
- noascii:禁用快速的ASCII大小写比较
- nocase:不区分大小写
- nodiacritics:不匹配变音符号。
- nofileonly:不允许匹配文件
- nofolderonly:不允许匹配文件夹
- nopath:不匹配路径
- noregex:禁用正则表达式
- nowfn:不匹配整个文件名
- nowholefilename:不匹配整个文件名
- nowholeword:不匹配整个单词
- nowildcards:禁用通配符
- noww:不匹配整个单词
- path:匹配文件名和路径
- regex:启用正则表达式
- utf8:禁用快速的ASCII大小写比较
- wfn:匹配整个文件名
- wholefilename:匹配整个文件名
- wholeword:仅匹配整个单词
- wildcards:启用通配符
- ww:金匹配整个单词
3.5函数:
- album::搜索包含text内容的专辑元数据的媒体。
- ansicontent::搜索包含text内容的ANSI文件。
- artist::搜索包含text内容的艺术家元数据的媒体。
- attrib::搜索具有指定文件属性attributes的文件和文件夹。
- attribdupe:查找具有相同属性的文件和文件夹。
- attributes::搜索具有指定文件属性attributes的文件和文件夹。
- bitdepth::查找指定位深度bitdepth的图像。
- child::搜索包含匹配文件名filename子项的文件夹。
- childcount::搜索包含指定数量count的子文件夹和文件的文件夹。
- childfilecount::搜索包含指定数量文件的文件夹。
- childfoldercount::搜索包含指定数量的子文件夹的文件夹。
- comment::搜索包含text内容评论元数据的媒体。
- content::搜索包含text字符串内容的文件。
- count::限制最大查询结果数量。
- dateaccessed::搜索指定访问日期的文件和文件夹。
- datecreated::搜索指定创建日期的文件和文件夹。
- datemodified::搜索指定修改日期的文件和文件夹。
- daterun::搜索指定运行日期的文件和文件夹
- da::搜索指定访问日期的文件和文件夹
- dadupe:查找访问日期相同的文件和文件夹。
- dc::搜索指定创建日期的文件和文件夹。
- dcdupe:查找创建日期相同的文件和文件夹。
- dimensions:X:查找具有指定宽度和高度的图像。
- dm::搜索指定修改日期的文件和文件夹
- dmdupe:查找修改日期相同的文件和文件夹。
- dr::查找运行日期相同的文件和文件夹。
- dupe:搜索重复的文件名。
- empty:搜索空文件夹
- endwith::以text结尾的文件名(包括扩展名)。
- ext::在指定的分号分隔的扩展名列表中搜索匹配扩展名的文件。
- filelist::在指定的管道(|)分隔文件列表中搜索文件名列表。
- filelistfilename::搜索属于文件列表文件名的文件和文件夹。
- frn::搜索指定文件引用号的文件和文件夹。
- fsi::在指定的基于零的内部文件系统索引中搜索文件和文件夹。
- genre::搜索流派元数据的媒体。
- height:查找具有指定高度的图像(以像素为单位)。
- infolder::搜索指定路径的文件及文件夹,不包括子文件夹。
- len::搜索匹配指定文件长度的文件及文件夹。
- namepartdupe:搜索具有相同名称的文件和文件夹。
- orientation::搜索具有指定方向的图像(横向或纵向)。
- parent::搜索指定路径中的文件和文件夹,不包括子文件夹。.
- parents::搜索具有指定数量的父文件夹的文件和文件夹。
- rc::搜索具有指定的最近更改日期的文件和文件夹。
- recentchange::搜索具有指定的最近更改日期的文件和文件夹。
- root:搜索没有父文件夹的文件和文件夹。
- runcount::搜索具有指定运行计数的文件和文件夹。
- shell::搜索已知的shell文件夹名称,包括子文件夹和文件。
- size::搜索具有指定大小的文件(以字节为单位)。
- sizedupe:搜索重复大小的文件。
- startwith::搜索以text开头的文件名。
- title::搜索标题元数据的媒体。
- track::找具有指定曲目编号的媒体文件。
- type::搜索具有指定类型type的文件和文件夹。
- utf16content::搜索包含text字符串内容的UTF16文件名称。
- utf16becontent::搜索包含text字符串内容的UTF16 Big Endian文件。
- utf8content::搜索包含text字符串内容的UTF8文件。
- width::找具有指定宽度的图像(以像素为单位)。
3.6函数语法:
- function:value 等于value。
- function:<=value 小于或等于value。
- function:
- function:=value 等于value。
- function:>value 大于value。
- function:>=value 大于或等于value。
- function:start..end 在satrt至end范围内的值。
- function:start-end在satrt至end范围内的值。
3.7文件大小语法:
- size[kb|mb|gb]
3.8文件大小常量:
- 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
3.9日期语法
- year
- month/year or year/month(取决于区域设置)
- day/month/year, month/day/year or year/month/day(取决于区域设置)
- YYYY[-MM[-DD[Thh[:mm[:ss[.sss]]]]]]
- YYYYMM[DD[Thh[mm[ss[.sss]]]]]
3.10日期常量:
- today
- yesterday
- tomorrow
- 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
3.11属性常量:
- A归档文件
- C压缩文件
- D目录
- E加密文件
- H隐藏文件
- I无内容索引文件
- L重新分析点文件
- N常规文件
- O离线文件
- P稀疏文件
- R只读文件
- S系统文件
- T临时文件
- V设备文件
四、应用实例
以上内容简要地展示了Everything的一些语法知识。接下来,我将给大家分享一些应用示例,感受一下这款软件的强大吧!
4.1搜索包含字符“t”的可执行文件(如下图所示)。
搜索语法:exe:*t*
从上图搜索结果可以看到,exe语法查找出来的可执行文件扩展名包括msi, msp, exe, bat, cmd, scr等。同理,audio语法查找出来的文件扩展名包括:aac, aif, aifc, aiff, au, fla, flac, it, m4a, mid, mod, mp3, ogg, rmi, voc, wav, wma等;zip语法查找出来的文件扩展名包括:7z, bz2, cab, gz, gzip, jar, rar, tar, tgz, z, zip等;pic语法查找出来的文件扩展名包括:ani, bmp, gif, ico, jpeg, jpg, pcx, png, psd, tga, tif, tiff, wmf等;doc语法查找出来的文件扩展名包括:c, chm, cpp, csv, doc, docm, docx, dot, dotm, dotx, h, hpp, htm, html, hxx, ini, java, lua, mht, odt, pdf, potx, pps, ppsm, ppsx, ppt, pptm, pptx, rtf, thmx, txt, xlam, xls, xlsb, xlsm, xlsx, xltm, xltx, xml等; video语法查找出来的文件扩展名包括:3gp, amr, avi, f4v, flv, mkv, mov, mp4, mpg, mts, rm, rpm, swf, ts, vob, wmv等。以上是小编电脑里面的文件类型,可能还有其他文件类型未能体现出来。以上语法对应于界面的选项如下图所示:
4.2以区分大小写的方式搜索包含AAAAA的文件名(如下图所示)。
搜索语法:case:AAAAA
若需要以忽略大小写的方式搜索文件,其搜索如法为:nocase:aaaaa(如下图所示)。
4.3搜索指定文件名称为HEAD FIRST C的文件(如下图所示)。
搜索语法:file:"HEAD FIRST C"
为什么需要在文件名称前后加上双引号呢?因为,若不在文件名称前后添加引号,搜索语法将其当做HEAD AND FIRST AND C三个并列条件进行搜索(如下图所示)。
4.4搜索指定文件夹:F:\10-Sofeware\SSR(如下图所示)。
搜索语法:folder:F:\10-Sofeware\SSR
大家可以看到,该语法也将子文件夹显示出来了。如果我们只要当前的文件夹而不需要显示子文件夹呢,那怎么办呢?好办,语法如下所示:folder: parent:F:\10-Sofeware\SSR(如下图),如果仅显示当前文件夹的文件,又该如何呢?同理,搜索语法如下:file: parent:F:\10-Sofeware\SSR(如下图)。
4.5搜索以mongo开头的包含Action字符的PDF文件,其中文件名不区分大小写(如下图所示)。
搜索语法:regex:^mongo.*action.*pdf$ nocase:
4.6搜索媒体元数据专辑属性中包含字符“风”的文件。
搜索语法:album:风
有人可能问:前面两个结果怎么不包含“风”呢!你一定错误地理解该语法了。该语法搜索的是媒体元数据属性信息,如下图所示:
如果我们要搜索艺术家是王菲的媒体文件,又该如何呢?非常简单,搜索语法如下:artist:王菲(如下图所示)
类似的,width:;height:;bitdepth:;dimensions:X;orientation:;genre:;comment:;title:;track:;attrib:;attributes:等搜索语法都是查找文件元数据(如下图所示)。
4.7搜索计算机中的空文件夹及重复文件名(如下图所示)。
空文件夹搜索语法:empty: 重复文件名搜索语法:dupe: file:
4.8在本计算机中搜索大于等于1G的文件(如下图所示)。
搜索语法:size:>=1GB
4.9搜索以psp结尾的文件(如下图所示)。
搜索语法:endwith:psp
startwith:搜索语法类似,大家可以试一试。
4.10搜索修改日期为2018年8月1日以后的txt文件。
搜索语法:datemodified:>2018-08-01 file:*.txt 或dm:>2018-08-01 file:*.txt
类似地,dateaccessed:或da:搜索指定访问日期的文件;datecreated:或dc:搜索指定创建日期的文件;daterun:或dr:搜索指定运行日期的文件。
4.11搜索指定文件夹中文件内容包含“中华人民共和国”字样的文档。
在docx、pptx、txt、xlsx及pdf等文件格式内分别存储了以下示例文本。
示例文本:
搜索语法:D:\ccp content:中华人民共和国
类似的,ansicontent:;utf8content:;utf16becontent:;utf16content:等搜索语法搜索指定编码方式的文件内容。以上示例也可以匹配出文本型PDF文档中的内容,小编以英文字符搜出的结果一部分满足条件,一部分不满足结果。使用以上语法匹配“中华人民共和国”,完全匹配不出来,小编百思不得其解。
注意事项:如果不指明文件夹,该搜索语法将在计算机文件系统全局查找文档,可能导致搜索时间过长,如果在指定目录中存在大量的比较大的文件,可能会使计算机内存和CPU耗用资源过多,影响电脑整体的性能,请谨慎操作。
以上示例基本上涵盖了Everything软件的大部分语法操作,如果你有兴趣的话,可以看看下面一些尚未介绍的语法描述,可能对你也有所帮助。
修饰符:nopath:, nowfn:, nowholefilename:, nowholeword:, nowildcards:, noww:, path:, wfn:, wholefilename:, wholeword:, ww:。
函数:child:, childcount:, childfilecount:, childfoldercount:, count:, ext:, filelist:, filelistfilename:, infolder:, len:, parents:。
五、查看帮助
Everything软件的搜索方法,在上面的内容基本上讲述完毕。可能还会有人问:我记不住上面的语法要点,怎么办呢?有没有快捷的方式检索到这些语法知识呢?答案是肯定的!单击"帮助"下拉菜单-->"搜索语法"或"正则表达式语法"就可以查找到你想要的语法(如下图)。唯一遗憾的是,里面的内容是英文的,你可以去官网下载中文语言版本的Everything软件,至于语法帮助里面的内容是不是中文的,小编也不清楚,小编一直是使用英文版的Everything。当然,你也可以收藏本篇文章。你转发本篇文章,小编也是很乐意的!
六、结束语
- 嘿嘿,前天刚注册的头条号,今天特来头条写第一篇原创文章。
- 本篇文章来源于小编同名公众号原创文章,感谢你的观看,如果对你有帮助,那是再好不过了!