在 Windows PC(比如“MYPC”)上,我有多个映射驱动器;根据net use
:
>net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK X: \\BLAHBLAH1\e$ Microsoft Windows Network
OK Y: \\BLAHBLAH2\e$ Microsoft Windows Network
OK Z: \\BLAHBLAH3\s$ Microsoft Windows Network
The command completed successfully.
但是当我在那台 PC 上运行这个 Powershell 时:
$disks = Get-WmiObject -Class Win32_MappedLogicalDisk -Filter "DeviceID='Z:'"
foreach($disk in $disks)
{
[Console]::WriteLine("DEBUG: " + $disk.Name + " is " + $disk.ProviderName );
}
它返回:
DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="4491554321" is \\OTHERPC\c$\
DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="3129225404" is \\BLAHBLAH3\s$
DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="5884378361" is \\BLAHBLAH3\s$
这些其他 Z 映射驱动器是从哪里来的?它们如何占用相同的驱动器号?我可以判断它们是否可以安全移除,如果可以,如何移除?
MYPC 实际上是一个服务器,所以我不能只清除所有映射的驱动器(我通常会这样做)。
如果这是由于其他用户显示了映射驱动器,我该如何更改 Powershell 以缩小到仅登录用户(确切net use
的行为方式)?