Test-Path可以测试文件或文件夹是否存在,它能很好的支持驱动盘符,但是光UNC路径将可能不行。
看下面例子,它将返回$true,假设你没有关闭它隐藏的管理共享目录。
$path = '\\127.0.0.1\c$' Test-Path -Path $path
再看这个,同样的代码这个将返回 $false:
Set-Location -Path HKCU:\ $path = '\\127.0.0.1\c$' Test-Path -Path $path
如果当前路径指向注册表,Powershell在非文件系统的位置将获取不到UNC路径,因为test-path 会优先从当前提供程序的上下文中去获取UNC路径,但当前的注册表中没有这样的路径,Test-Path将返回$false.
确保Test-Path使用正确的UNC路径,你必须先在UNC路径上加上FileSystem。这样,即使环境没有在磁盘下,也可返回正确的结果。
Set-Location -Path HKCU:\ $path = 'filesystem::\\127.0.0.1\c$' Test-Path -Path $path
原文地址: Testing UNC Paths
本文链接: https://www.pstips.net/testing-unc-paths.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!