跳到主要内容

简单模式语法

简单模式遵循更传统的 UNIX 命令行方法,使用命令行开关来指示模式匹配的性质。 使用简单模式时,结果集无条件地包含所有核心文件元数据字段。 下面将更详细地描述它们。

简单模式语法

findsincetrigger 命令的命令语法中,您会看到 [patterns],我们允许文件名模式按照以下规则进行匹配

  • 我们维护一个包含列表和一个排除列表。 在处理参数时,我们将它们累积到其中一个列表中。 默认情况下,它们被累积到包含列表中。
  • -X 导致任何后续项目被放入排除列表
  • -I 导致任何后续项目被放入包含列表
  • -- 表示模式集的结束
  • -p 表示以下模式应使用 pcre 作为表达式项。 这将在生成下一个项后重置。
  • -P 表示以下模式应使用 ipcre 作为表达式项并执行不区分大小写的匹配。 这将在生成下一个项后重置。
  • 如果既未使用 -p 也未使用 -P,则生成的项将使用 match
  • ! 后跟一个空格,后跟一个模式将否定模式匹配的含义,生成一个 not 项。

包含列表中的任何元素都将匹配; 它们使用“anyof”项组合在一起。

包含列表和排除列表使用逻辑 (NOT anyof exclusion) AND (anyof inclusion) 组合。

例如

 '*.c'

生成一个文件表达式

["match", "*.c", "wholename"]

一个列表

'*.js' '*.css'
["anyof",
["match", "*.js", "wholename"],
["match", "*.css", "wholename"]
]

排除列表语法如何工作的一个示例

 -X '*.c' -I '*main*'

生成

["allof",
["not", ["match", "*.c", "wholename"]],
["match", "*main*", "wholename"]
]