2011-11-17 13 views
0

有誰知道下面的Windows命令在PowerShell中的等價物:PowerShell中net use \ server_name share_name/delete的等效用途?

net use \\server_name\share_name /delete 

我想從股票斷開PowerShell中,包括沒有被映射爲共享的驅動器的人。

+2

也許這個問題的答案:http://stackoverflow.com/questions/4055704/how-can-i-convince-powershell-run-through-task- scheduler-to-find-my-network-dr/4097398#4097398可以以某種方式指導你。 – rsc

+3

爲什麼不直接使用「net use \\ servername \ share \/delete」? powershell是一個shell,而不是一個替代操作系統。 – x0n

+0

@ x0n由於ps中的錯誤,當您調用poweshell將標準輸出中的標準錯誤重定向到2&> 1時引發異常:請在此處查看:http://www.leeholmes.com/blog/2008/07/ 30 /解決方法-OS-handles-position-is-not-what-filestream-expected /。爲了避免這個問題,我從powershell調用了一個bat,它調用net use重定向標準輸出中的標準錯誤,否則我會得到錯誤。我的ps腳本被一個調度程序調用,該調用程序使用2&> 1來調用它,而我沒有控制權,並且ps有一些推理來找到它必須斷開的共享。 –

回答

0

WMI應該做的伎倆:

ps> get-wmiobject -computer server -class win32_share -credential $creds | ` 
    where-object { $_.name -eq "sharedfolder" } | foreach-object { $_.delete() } 
+0

這會刪除共享本身,而客戶端調用網絡使用/刪除以斷開共享 –