Skip to content
Back to top

# 搜索语法

TreeSize提供了一种语法，允许您快速灵活地自定义搜索。

## 简单搜索示例

搜索2022年的照片：`Images 2022`

TreeSize将列出所有图像文件，无论是jpg、png、bmp或类似格式，修改日期在2022年。

搜索大型Office文件：`Office > 10MB`

TreeSize列出所有大于10兆字节的Excel、Word、PDF等文件。

## 搜索语法结构

某些关键字还提供了更精确地表述搜索的机会。

除了 `file names`，您还可以搜索 `file extensions`、`size`、`date`、`file contents` 等。

搜索词可以通过 `AND` 或 `OR` 组合，并且可以使用语法从搜索中排除文件名。

还可以使用通配符和正则表达式。

下面是允许的关键字描述和一些用例。对于大多数关键字，提供了简写形式以加快搜索输入。

搜索语法结构如下：

    <Property> <Operator> <Value>

例如：

    name: = readme

该语法查找所有名称（属性）与单词readme（值）匹配的文件。

可以组合多个搜索词：

    name:=readme, name:=movie

或

    name:=readme OR name:=movie

查找名称中包含'readme'或'movie'的所有文件。

## 所有属性、运算符和连接词

下表显示了您可以在TreeSize中使用的所有可用属性、运算符和连接词。

Note

搜索文件名时，可以省略 name:。尽管如此，作为操作符的 `=` 字符一般可以省略，作为两个搜索词之间的连接词的 `AND` 字符也可以省略。

这些是搜索中使用的默认属性、运算符和连接值。个别属性有不同的拼写，可以在下表中找到。

Note

如果您想在搜索词中使用搜索语法的保留字符，如括号、逗号或空格，则搜索词必须用双引号括起来。示例见下表。

Note

关于日期的说明：当使用日期作为搜索词的一部分时，所需的日期格式取决于Windows中配置的区域设置。

### 属性

属性 | 描述 | 示例 | 替代形式 | 说明
--- | --- | --- | --- | ---
`name:` | 按文件名搜索。这是当未明确指定属性时使用的默认属性。 | `readme` | `name:readme` | 搜索所有文件名包含“readme”一词的文件。
`path:` | 按文件夹路径搜索。 | `path:Windows` | 无 | 搜索Windows文件夹中的所有文件和文件夹。
`extension:` | 按文件扩展名搜索。 | `ext:txt` | `extension:txt` | 搜索所有文件扩展名为 'txt' 的文件。
`group:` | 按文件组搜索。 | `group:Video files` | 无 | 搜索所有视频文件。信息：可在 '选项 > 配置文件组' 下调整可用的文件组。
`content:` | 按文件内容搜索。 | `cont:license` | `content:license` | 对所有文件进行全文搜索，查找文件内容中包含单词 'license' 的文件。
`size:` | 按文件大小搜索。 | `size:<500MB` | 无 | 搜索所有小于 500 MB 的文件。信息：不考虑文件夹大小。
`accessed:` | 按访问日期搜索。 | `accessed:<=01.11.2021` | 无 | 搜索访问日期在指定时间范围内的文件。
`created:` | 按创建日期搜索。 | `created:<=01.11.2021` | 无 | 搜索创建日期在指定时间范围内的文件。
`modified:` | 按修改日期搜索。 | `modified:<=01.11.2021` | 无 | 搜索修改日期在指定时间范围内的文件。
`datetaken:` | 按拍摄日期搜索（例如，照片）。 | `datetaken:03.03.2023` | 无 | 搜索在2023年3月3日拍摄的文件。
`attribute:` | 按文件属性搜索。 | `attribute: HS` | 无 | 搜索具有文件属性 H（隐藏）和 S（系统）的文件。
`keyword:` | 按文件中的关键字搜索。 | `keyword: my_keyword` | 无 | 搜索标记为关键字“my_keyword”的文件（例如，docx 文件）。
`owner:` | 按文件所有者搜索。 | `owner: John` | 无 | 搜索文件所有者名为“John”的文件。

### 操作符

操作符 | 描述 | 示例 | 替代形式 | 说明
--- | --- | --- | --- | ---
`=` | 属性必须适用。 | `readme` | `name:=*readme` | 搜索所有文件名包含“readme”一词的文件。这是默认操作符，如果未明确指定操作符，则使用此操作符。
`!=` | 属性必须不适用。 | `!=readme` | `name:!=readme` | 搜索所有不包含“readme”一词的文件。
`~` | 可以与 name: 属性结合使用。以下值是正则表达式（Regex），并且不得应用于该属性。注意：如果使用了搜索语法字符，例如括号、逗号或空格，则 正则表达式 必须用引号括起来。 | `~[0-9]` | `name:!~[0-9]` | 搜索所有名称中至少包含一个数字的文件。
`!~` | 可以与 name: 属性结合使用。以下值是正则表达式（Regex），并且不得应用于该属性。注意：如果使用了搜索语法字符，例如括号、逗号或空格，则 正则表达式 必须用引号括起来。 | `!~[0-9]` | `name:!~[0-9]` | 搜索所有名称中没有数字的文件。
`> or >=` | 用于大小或日期比较的运算符：该属性必须大于（或大于等于）指定值。 | `size:>= 5MB` | 无 | 搜索所有大于或等于 5 MB 的文件。信息：搜索仅涉及文件大小；不考虑文件夹大小。
`< or <=` | 用于大小或日期比较的运算符：该属性必须小于（或小于等于）指定值。 | `size:<= 500MB` | 无 | 搜索所有小于或等于 500 MB 的文件。信息：搜索仅涉及文件大小；不考虑文件夹大小。
`( and )` | 可以使用括号对搜索输入的部分进行分组。 | `(readme, license)*.txt` | `(name:=readme OR name:=license) AND *.txt` | 搜索所有文件名中包含“readme”或“license”的文本文件。

### 连接词

连接词 | 描述 | 示例 | 替代形式 | 说明
--- | --- | --- | --- | ---
`空格字符` 或 `AND` | 所有连接的搜索模式必须匹配。 | `readme ext:txt` | `name:=readme AND extension:=txt` | 搜索所有文件，其文件名包含单词 'readme' 且文件扩展名为 'txt'。这是在未明确指定连接时使用的默认连接。
`逗号` 或 `OR` | 至少一个相关的搜索模式必须匹配。 | `readme, movie` | `name:=readme OR name:=movie` | 搜索所有文件，其文件名包含单词 'readme' 或 'movie'。

### 保留字符

在指定值时，更准确地说是在实际搜索模式中，有各种保留字符，例如通配符或用于精确搜索的引号。

下表列出了这些字符并通过一些示例进行了解释。

示例值 | 描述 | 示例 | 替代形式 | 结果
--- | --- | --- | --- | ---
`*readme*` | 搜索包含 'readme' 的内容，前后可以放置任意数量的字符。该词包含 'readme'。 | `*readme*` | `name:=*readme*` | 找到：'123readme.txt'，'123readme.docx' 但不包括：'read_me.txt'，'reading.docx'
`readme` | 对应 readme。在该词前后的两个通配符可以省略以简化表达。 | `readme` | `name:=*readme` | 找到：'123readme.txt'，'123readme.docx' 但不包括：'read_me.txt'，'reading.docx'
`readme*` | 搜索以'readme'开头的词，后面可以放置任意数量的字符，但前面不允许有字符。 | `readme*` | `name:=readme*` | 找到：'readme.txt'，'readme_c.docx'，但不包括：'123readme.txt'，'read_me.txt'
`*readme` | 搜索以'readme'结尾的词，前面可以放置任意数量的字符，但后面不允许有字符。 | `*readme` | `name:=*readme` | 找到：'123readme'，'c_readme'，但不包括：'readme.txt'，'readme_c'
`"readme"` | 精确查找单词"readme"的出现。它搜索该词的确切出现，不考虑该词的部分或变体。这意味着被搜索的词必须作为独立和完整的词出现在文本中，才能被识别为命中。 | `"readme"` | `name:="readme"` | 找到：'readme'或'readme.txt'，但不包括：'readmes.txt'，'123readme'
`rea?me` | 搜索以'rea'开头、以'me'结尾并且中间恰好包含一个字符的文件名。 | 无 | `name:=rea?me` | 找到：'readme'，'reasme'，'rea1me'，但不包括：'rea123me'，'readme.txt'
`\\*readme*` | 搜索路径中包含术语"readme"的文件。 | `\\*readme*` | `name:=\\*readme*` | 查找：在任何文件夹中查找 "readme.txt"，在 "C:\temp\readme\local" 中查找 "abc.doc"，但不包括：在 "C:\temp\local" 中查找 "abc.doc"。