如何使用 powershell 断开网络驱动器

如何使用 powershell 断开网络驱动器

我想使用 powershell 断开网络驱动器 (Y:)。该驱动器号已分配/映射到网络位置。有没有简单的方法可以做到这一点?

我相信“net use XXX /delete”可以做到这一点。

问题是:

C:\Windows>net use
New connections will be remembered.


Status       Local     Remote                    Network

-------------------------------------------------------------------------------
OK           Y:        \\192.168.1.108\d         Microsoft Windows Network
The command completed successfully.

为什么当我尝试时:

C:\Windows>net use \\192.168.1.108\d  /del

我得到:

C:\Windows>net use \\192.168.1.108\d  /del
The network connection could not be found.

More help is available by typing NET HELPMSG 2250.

????

答案1

在 powershell 中,您可以发出一组类似的命令来断开驱动器的连接,只需提供您用于连接的 UNC,而不知道映射的驱动器号。

棘手的部分是您必须转义该\字符才能在 WMI 查询中使用它。

$Drive = Get-WmiObject -Class Win32_mappedLogicalDisk -filter "ProviderName='\\\\192.168.1.108\\d'"
net use $Drive.Name /delete

答案2

我建议使用 PowerShell 自己的 Remove-PSDrive。例如:

Remove-PSDrive Y

不要包含冒号或反斜杠;只需使用驱动器号。

答案3

根据您的评论更改了我的答案

净使用 Y: /delete

答案4

在 PowerShell 5(Windows 10)及更高版本中,您可以使用:

Remove-SmbMapping -LocalPath "Y:"

https://docs.microsoft.com/en-us/powershell/module/smbshare/remove-smbmapping?view=win10-ps

相关内容