我尝试在 PowerShell 中将位置设置为映射网络驱动器 Z,但没有效果。
我有以下驱动器号:C,D,E,Z。其中前三个只是本地磁盘,而Z当然是映射到字母Z的网络位置。
我可以从 C 切换到 D,再切换到 E,再切换回 C,但出于某种原因,我无法切换到 Z 字母。不过我可以切换到该位置,但我必须输入网络位置,而不是使用驱动器号。
PS C:\Windows\system32> D:
PS D:\> C:
PS C:\Windows\system32> Z:
Set-Location : Cannot find drive. A drive with the name 'Z' does not exist.
At line:1 char:13
+ Set-Location <<<< Z:
+ CategoryInfo : ObjectNotFound: (Z:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
PS C:\Windows\system32> Set-Location \\fileserver\karta
PS Microsoft.PowerShell.Core\FileSystem::\\fileserver\karta> C:
PS C:\Windows\system32> Z:
Set-Location : Cannot find drive. A drive with the name 'Z' does not exist.
At line:1 char:13
+ Set-Location <<<< Z:
+ CategoryInfo : ObjectNotFound: (Z:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
PS C:\Windows\system32> Set-Location Z:
Set-Location : Cannot find drive. A drive with the name 'Z' does not exist.
At line:1 char:13
+ Set-Location <<<< Z:
+ CategoryInfo : ObjectNotFound: (Z:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
PS C:\Windows\system32>
为什么不起作用?PowerShell 不支持此功能吗?使用驱动器号将位置设置为网络位置?
答案1
您遇到的问题是因为Z:
驱动器是在用户上下文中映射的,而不是在“管理员”上下文中映射的。
因此,当您“以管理员身份”运行 PowerShell 时,Z:驱动器(映射)不存在,如果您需要它,则必须在该上下文中创建它才能使用它。