PowerShell 中 Test-Path 和 Resolve-Path 之间的区别?


Test-Path 命令检查特定路径是否存在并返回布尔值输出(True 或 False),而 Resolve-Path 命令显示特定目录(如果存在),否则引发异常。例如,

对于存在的路径,

示例

PS C:\> Test-Path C:\Temp\
True
PS C:\> Resolve-Path C:\Temp\
Path
----
C:\Temp\

对于不存在的路径,

PS C:\> Test-Path C:\Temp11\
False
PS C:\> Resolve-Path C:\Temp11\
Resolve-Path : Cannot find path 'C:\Temp11\' because it does not exist.
At line:1 char:1
+ Resolve-Path C:\Temp11\
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (C:\Temp11\:String) [Resolve-Path], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.ResolvePathCommand

Resolve-Path 还用于获取使用通配符的文件内容。例如,

示例

Resolve-Path C:\Temp\*

以上命令将获取 C:\temp 路径内的所有文件和文件夹。

Resolve-Path C:\Temp\web*

以上命令将使用以 Web 开头的关键字获取 C:\temp 内的所有文件。

输出

Path
----
C:\Temp\WebImages
C:\Temp\web.html
C:\Temp\web1.html

更新于: 2021 年 2 月 8 日

620 次查看

开启您的 职业生涯

通过完成课程获得认证

开始
广告