我可以使用以下代码示例
重新创建该问题New-PSDrive -Name Z -PSProvider FileSystem -Root \\10.10.22.6\d$ -Credential $cred -Confirm:$false -Scope Global
Set-Content -Path 'Z:\__unc_test\Powershell\___datefile' -Value ([System.DateTime]::Now).ToString()
Get-ChildItem Z:\__unc_test
Get-ChildItem将返回目录列表,因此我知道New-PSDrive调用正在成功,UNC可通过Powershell获得。
但是,Set-Content调用失败并出现以下错误:
Set-Content : Could not find a part of the path '\\10.10.22.6\d$\10.10.22.6\d$\10.10.22.6\d$\__unc_test\Powershell\___datefile'.
At line:1 char:1
+ Set-Content -Path 'Z:\__unc_test\Powershell\___datefile' -Value ([System.DateTim ...
如果您看一下错误,Set-Content就会尝试以某种方式解决路径并且正在做一些非常古怪的事情。
任何人都可以尝试在他们的机器上重新创建这个和/或向我解释我在这里做错了什么吗? Get-Item,Get-ChildItem和Copy-Item似乎都适用于该驱动器号,但不适用于Set-Content。
答案 0 :(得分:2)
我可以在我的机器上重现这个问题。 如果在调用Set-Content之前文件不存在,则似乎只会发生这种情况。 简单的解决方案,在使用set-content之前运行它:
New-Item -Path 'Z:\__unc_test\Powershell\___datefile' -Type file -Force
如果我使用“net use”添加驱动器,也不会出现此问题。