Sysinternals Process Monitor (ProcMon):在过滤器上使用通配符
Sysinternals Process Monitor (ProcMon): Using wildcards on filter
我正在使用 Sysinternals Process Monitor 来调试一些传入事件,现在我正尝试在 Path 上创建一个过滤器并使用通配符。我要使用的是过滤以 c:\MyApp\MyDocuments\Temp 开头并以 .pdf
结尾的路径
路径过滤器应如下所示:c:\MyApp\MyDocuments\Temp*.pdf
我该怎么做?
据我所知,这是不可能的。你可以只使用
begins with
c:\MyApp\MyDocuments\Temp
和另一个过滤器 ends with
.pdf
.
当您有两个像这样的过滤器时:
Path
begins with
c:\MyApp\MyDocuments\Temp
Path
ends with
.pdf
实际上以该临时文件夹开头的任何内容都包含在内,并且包含记录 .pdf 事件的任何其他位置,因此您会得到不想要的结果。像这样的东西:
C:\MyApp\MyDocuments\Temp.txt (not a PDF)
C:\Some\Other\Folder\file.pdf (not the folder I want)
Process Monitor 帮助文件解释了为什么 begins with / ends with 过滤器不能一起工作。来自帮助文件:
Process Monitor ORs together
all the filters that are related to a particular attribute type and
ANDs together filters of different attribute types. For example, if
you specified process name include filters for Notepad.exe and Cmd.exe
and a path include filter for C:\Windows, Process Monitor would only
display events originating in either Notepad.exe or Cmd.exe that
specify the C:\Windows directory.
因此,因为过滤器实体是“开始于”和“结束于”的“路径”,所以进程监视器对它们进行 OR,因此我们得到了我们不想要的噪音。这是一个按我们想要的方式工作的过滤器组合:
Path
ends with
.pdf
Include
Path
excludes
C:\MyApp\MyDocuments\Temp
Exclude
据我所知,“排除”关系运算符的行为类似于“不包含”。我找不到任何列出所有运算符及其作用的特定文档,但看起来就是这样。因此,即使我们有两个将进行 OR 运算的“路径”过滤器,因为一个是包含而另一个是排除,我们还是得到了我们想要的,这只是在该文件路径中编辑的 PDF。
我正在使用 Sysinternals Process Monitor 来调试一些传入事件,现在我正尝试在 Path 上创建一个过滤器并使用通配符。我要使用的是过滤以 c:\MyApp\MyDocuments\Temp 开头并以 .pdf
结尾的路径路径过滤器应如下所示:c:\MyApp\MyDocuments\Temp*.pdf
我该怎么做?
据我所知,这是不可能的。你可以只使用
begins with
c:\MyApp\MyDocuments\Temp
和另一个过滤器 ends with
.pdf
.
当您有两个像这样的过滤器时:
Path
begins with
c:\MyApp\MyDocuments\Temp
Path
ends with
.pdf
实际上以该临时文件夹开头的任何内容都包含在内,并且包含记录 .pdf 事件的任何其他位置,因此您会得到不想要的结果。像这样的东西:
C:\MyApp\MyDocuments\Temp.txt (not a PDF)
C:\Some\Other\Folder\file.pdf (not the folder I want)
Process Monitor 帮助文件解释了为什么 begins with / ends with 过滤器不能一起工作。来自帮助文件:
Process Monitor ORs together all the filters that are related to a particular attribute type and ANDs together filters of different attribute types. For example, if you specified process name include filters for Notepad.exe and Cmd.exe and a path include filter for C:\Windows, Process Monitor would only display events originating in either Notepad.exe or Cmd.exe that specify the C:\Windows directory.
因此,因为过滤器实体是“开始于”和“结束于”的“路径”,所以进程监视器对它们进行 OR,因此我们得到了我们不想要的噪音。这是一个按我们想要的方式工作的过滤器组合:
Path
ends with
.pdf
Include
Path
excludes
C:\MyApp\MyDocuments\Temp
Exclude
据我所知,“排除”关系运算符的行为类似于“不包含”。我找不到任何列出所有运算符及其作用的特定文档,但看起来就是这样。因此,即使我们有两个将进行 OR 运算的“路径”过滤器,因为一个是包含而另一个是排除,我们还是得到了我们想要的,这只是在该文件路径中编辑的 PDF。