PowerShell Test-Path

2025年3月17日 | 阅读 3 分钟

PowerShell 中的 Test-Path cmdlet 如果文件或目录路径的所有元素都存在,则返回 $true,否则返回 $false。 它还可以判断文件是否在特定日期之后或之前更新过。 它确定路径的语法是否有效。

语法



参数

以下是 Test-Path cmdlet 中使用的参数

-Exclude

此参数用于指定此 cmdlet 忽略的那些项目。 此参数接受通配符。

-Path

此参数用于指定要测试的路径。 如果使用包含空格的路径,请将其用引号括起来。 此参数接受通配符。

-Filter

此参数用于指定提供程序的格式或语言的过滤器。

-Include

此参数用于指定由该 cmdlet 测试的路径。 在此参数中,接受通配符。

-IsValid

-IsValid 用于测试路径的语法,而不是检查路径的元素。 当此参数用于 cmdlet 时,如果路径的语法有效,则 cmdlet 返回 $True,否则返回 $False。

-LiteralPath

此参数用于指定要测试的路径。 与 -Path 参数不同,此参数的值将完全按照其输入方式使用。

-NewerThan

此参数用于将时间指定为 DateTime 的对象。

-OlderThan

此参数也用于将时间指定为 DateTime 的对象。

-PathType

此参数用于确定路径中指定的最终元素的类型。 当此参数用于 cmdlet 时,如果该元素是指定的类型,则返回 $True,否则返回 $False。

对于此参数,以下是可接受的值

  • 叶子:它是不包含其他元素的元素或值。
  • 容器:它是一个包含其他元素的元素或值,例如注册表项或目录。
  • 任何:它是一个叶子或容器的元素。

示例

示例 1:检查文件系统中的路径。

PowerShell Test-Path

此示例中的命令检查文件系统路径中的所有元素是否存在。 如果路径中缺少任何元素,则命令返回 $False,否则返回 $True。 在此示例中,路径中的所有元素都是正确的,因此它返回 True。

示例 2:检查注册表项中的路径

PowerShell Test-Path

此示例中的命令检查 Microsoft.PowerShell 注册表项的路径是否正确。 如果正确,则命令返回 $True,否则返回 $False。

示例 3:测试文件是否早于指定日期

PowerShell Test-Path

此示例中的两个命令都使用 -olderThan 参数来检查 k.txt 文件是否早于指定的日期。

第一个命令返回 $False,因为它是在 2019 年 12 月 10 日之后最后创建或修改的。 第二个命令返回 $True,因为它是在 2019 年 12 月 15 日之前最后创建或修改的。

-olderThan 参数仅与文件系统一起使用。