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.
????
Powershellでは、接続に使用したUNCのみが与えられていて、マップされたドライブ文字がわからない場合、このような一連のコマンドを発行してドライブを切断できます。
トリッキーな部分は、WMIクエリで使用するために\
文字をエスケープする必要があることです。
$Drive = Get-WmiObject -Class Win32_mappedLogicalDisk -filter "ProviderName='\\\\192.168.1.108\\d'"
Net Use $Drive.Name /delete
PowerShell独自のRemove-PSDriveを使用することをお勧めします。例えば:
Remove-PSDrive Y
コロンやバックスラッシュは含めないでください。ドライブ文字のみを使用してください。
あなたのコメントに基づいて私の答えを変更しました
正味使用Y:/ delete
PowerShell 5(Windows 10)以降では、以下を使用できます。
Remove-SmbMapping -LocalPath "Y:"
https://docs.Microsoft.com/en-us/powershell/module/smbshare/remove-smbmapping?view=win10-ps