为什么测试路径为 PSDrive 返回 $false?

Why is test-path returning $false for a PSDrive?

我正在从机器 运行ning SCCM 连接 PSDrive 并尝试执行测试路径以确定是否创建给定目录。 然而,测试路径为确实存在的目录返回 $false(事实上,我什至可以用 Tab 键完成 PoSh window)

我的PSDrive连接代码如下:

New-PSDrive -Name $SiteCode -PSProvider CMSite -Root $ProviderMachineName -Scope global

这 returns 一个 PSDrive 作为 "RED" 其中 returns 一个 $true 结果:

PS C:\> test-path RED:\
True

然而,当我尝试测试低于它的任何东西时,它 returns $false 如果我尝试创建新项目,它会失败

PS C:\> test-path RED:\Driver\Dell\WinPE\
False
PS C:\> new-item RED:\Driver\Dell\WinPE\
new-item : Path already exists.
At line:1 char:1
+ new-item RED:\Driver\Dell\WinPE\
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (OBFUSCATED\Driver\Dell\WinPE\:String) [New-Item], InvalidOperationException
    + FullyQualifiedErrorId : Path,Microsoft.PowerShell.Commands.NewItemCommand

(我混淆了机器的 FQDN)

如果我在路径上 运行 一个 get-item,这就是我得到的结果:

PSPath                : AdminUI.PS.Provider\CMSite::OBFUSCATED\Driver\Dell
PSParentPath          : AdminUI.PS.Provider\CMSite::OBFUSCATED\Driver
PSChildName           : Dell
PSDrive               : RED
PSProvider            : AdminUI.PS.Provider\CMSite
PSIsContainer         : True
SmsProviderObjectPath : SMS_ObjectContainerNode.ContainerNodeID=16777240
ContainerNodeID       : 16777240
FolderFlags           : 0
FolderGuid            : 1DAF9853-75BE-4629-97EF-0689D9E02961
IsEmpty               : False
Name                  : Dell
ObjectType            : 25
ObjectTypeName        : SMS_Driver
ParentContainerNodeID : 0
SearchFolder          : False
SearchString          :
SourceSite            : RED

我尝试指定 CMSite:: 而 运行 宁 test-path 但这也没有帮助。

关于我做错了什么导致这个问题有什么想法吗?

最后证明这个问题的修复非常简单。

删除尾部斜线似乎已解决问题:

PS C:\> test-path RED:\Driver\Dell\WinPE\
False
PS C:\> test-path RED:\Driver\Dell\WinPE
True

我不太确定为什么不过是这样。