Cómo desconectar una unidad de red con powershell

14

Me gustaría desconectar una unidad de red (Y :) con powershell. Esa letra de unidad se asigna / asigna a una ubicación de red. ¿Hay una manera simple de hacer eso?

Creo que "net use XXX / delete" haría eso.

El problema es:

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.

¿Por qué cuando lo intento?

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

Yo obtengo:

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.

????

FernandoSBS
fuente

Respuestas:

10

En powershell, podría emitir un conjunto de comandos como este para desconectar una unidad, dado solo el UNC que usó para conectarse, y sin saber la letra de la unidad que se asignó.

La parte difícil es que tienes que escapar del \personaje para usarlo en la consulta WMI.

$Drive = Get-WmiObject -Class Win32_mappedLogicalDisk -filter "ProviderName='\\\\192.168.1.108\\d'"
net use $Drive.Name /delete
Zoredache
fuente
2
Agregue /ya net use $Drive.Name /deletepara forzar el cierre de cualquier conexión abierta en la unidad. Si hay conexiones abiertas, net usesolicitará una acción que no desea en medio de una ejecución de script desatendida.
Alan Donnelly
6

Me gustaría sugerir el uso de Remove-PSDrive de PowerShell. Por ejemplo:

Remove-PSDrive Y

No incluya dos puntos ni una barra diagonal inversa; solo use la letra de unidad.

Guy Thomas
fuente
77
Remove-psdrive Y no eliminará por completo la unidad y dejará una asignación de unidad de red que arrojará un error cuando intente volver a crear la unidad ps en la misma sesión. Debe usar el uso / eliminación de red para negar este problema. Sería bueno si el comando powershell remove-psdrive realmente eliminara la unidad.
Esto es correcto. PowerShell 5 proporciona Remove-SmbMapping que funciona (consulte la respuesta a continuación)
Minkus
3

Cambié mi respuesta según tu comentario

Uso neto Y: / eliminar

Keltari
fuente
Creo que no me he expresado bien. Lo que quiero es eliminar el disco del explorador de Windows.
FernandoSBS
y si quiero usar la dirección de red para hacerlo?
FernandoSBS
no puede, está desconectando una unidad, no una parte
Keltari
verifique la publicación inicial por favor
FernandoSBS
reformule su publicación inicial porque lo que Keltari dijo es correcto. Lo que dijo eliminará el disco del explorador de Windows
Jason H