如何查看可用的Windows搜索过滤器?


11

我经常想知道如何使用Windows搜索过滤器。在现有的文件是极其有限的,但它的潜在用途是相当大的。

当我键入内容时,我看到的唯一搜索过滤器是“日期修改”和“大小”。谷歌搜索向我展示了一些可行的其他选择。每次尝试使用它时,我都会在思考“我可以使用哪些搜索过滤器,每个过滤器支持哪些选项?”。任何人都知道在哪里可以找到详尽的列表,或者如何配置“搜索”以获取可能的下拉列表?

要找到某些东西,我总是回到命令提示符。我想我可以做其他事情。

在此处输入图片说明


Answers:



4

要基于文件系统属性(例如,隐藏,系统,只读等)进行搜索,请使用直观上明显但很大程度上未记录的attributes关键字。如Windows 7帮助论坛中该线程所讨论的,用法是

属性:numeric_attribute_code

文件属性值(常量)为

FILE_ATTRIBUTE_READONLY      = 1
FILE_ATTRIBUTE_HIDDEN        = 2
FILE_ATTRIBUTE_SYSTEM        = 4
FILE_ATTRIBUTE_DIRECTORY     = 16
FILE_ATTRIBUTE_ARCHIVE       = 32
FILE_ATTRIBUTE_ENCRYPTED     = 64 or 16384
FILE_ATTRIBUTE_NORMAL        = 128
FILE_ATTRIBUTE_TEMPORARY     = 256
FILE_ATTRIBUTE_SPARSE_FILE   = 512
FILE_ATTRIBUTE_REPARSE_POINT = 1024
FILE_ATTRIBUTE_COMPRESSED    = 2048
FILE_ATTRIBUTE_OFFLINE       = 4096
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192

(前面提到的Windows 7帮助论坛说它FILE_ATTRIBUTE_ENCRYPTED是64,但是关于ATTRIB命令的页面说它是16384。我的测试(在Windows 7上)表明16384是正确的值。)

因此,例如,attributes:1搜索设置了READONLY属性的文件。只要。这将找不到同时设置了READONLY和ARCHIVE属性的文件attributes:33。要查找这两个文件(即,设置了READONLY属性但没有隐藏,SYSTEM,ENCRYPTED,COM​​PRESSED或任何其他奇异扩展属性的文件,而不管ARCHIVE属性的状态如何),可以使用

attributes:1 OR attributes:33

但是这种语法很快变得笨拙。幸运的是,有一个缩写形式:

attributes:(1 OR 33)

连词/分词关键字(ANDOR)必须大写;搜索过滤器(属性)的关键字,例如attributes(和filenamekindtypedatedatemodifiedsizeownerdatetakenauthortitle,等等)是不区分大小写的。顺便说一句,如果您喜欢额外的输入,可以说system.fileattributes代替attributes

因此,这里的基础上,对所有可能的搜索数字查询码RHA属性。(+R代表所有只读文件,无论HA状态; +R -H从上面的例子中-所有非隐藏只读文件)。

属性(符号)          数字attributes:值(一个或多个)
  +R  (1或3或33或35)
  +R +H  (3或35)
  +R +H +A  35
  +R +H -A  3
  +R -H  (1或33)
  +R -H +A  33
  +R -H -A  1
  +R +A  (33或35)
  +R -A  (1或3)
  -R  (0或2或32或34或128)
  -R +H  (2或34)
  -R +H +A  34
  -R +H -A  2
  -R -H  (0或32或128)
  -R -H +A  32
  -R -H -A  (0或128)
  -R +A  (32或34)
  -R -A  (0或2或128)
  +H  (2或3或34或35)
  +H +A  (34或35)
  +H -A  ( 2 OR 3)
  -H  (0 OR 1 OR 32 OR 33 OR 128)
  -H +A  (32 OR 33)
  -H -A  (0 OR 1 OR 128)
  +A  (32 OR 33 OR 34 OR 35)
  -A  (0 OR 1 OR 2 OR 3 OR 128)

笔记:

  • 可以通过在任何查询词前加上-(-)来反转查询词。例如,您可以使用查找隐藏的只读文件以外的所有内容-attributes:(3 OR 35)
  • 自然,即使您使用attributes关键字搜索隐藏文件,也不会找到任何内容,除非您在“文件夹选项”中选择了“显示隐藏文件,文件夹和驱动器”。
  • 从逻辑上讲,未设置任何属性的文件的attributes值应为0,但事实并非如此。以我的经验,它们的attributes值为NORMAL(128)。
  • 若要搜索目录,和/或已压缩,加密,未索引或设置了SYSTEM属性的文件/目录,请将第一张表中的适当常量添加到上表中的值中。不必包括“ 128”值;例如,对于-R -H +S -A,搜索4而不是应当足够好(4 OR 132)
  • 请记住,“自定义”的文件夹(例如带有非标准图标的文件夹)已设置READONLY属性。(自定义内容存储在隐藏的系统desktop.ini文件中。)
  • attributes如果您不关心其他属性,则无需使用关键字仅搜索目录(即,不包括文件)。只是使用type:folder。同样,-type:folder仅搜索文件(不包括目录)。不要将其与混淆kind:folder,后者将找到真正的文件系统文件夹,但还会找到诸如*.CAB和的集合文件*.ZIP
  • 另外,您可以使用encryptionstatus:encrypted或搜索加密的文件和目录is:encrypted。逆可以被指定为-encryptionstatus:encrypted-is:encryptedencryptionstatus:unencrypted
  • 当然,即使你使用attributes关键字来搜索系统文件,你不会找到任何除非你有“隐藏受保护的操作系统文件” 中“文件夹选项”中选择。

很好,除了原始答案,谢谢!
Abel
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.