2017-06-07 10 views
0

は(のADMIN $などのような管理者の株式なし)win7の上で株式をdelitingための.batでスクリプトを持って削除株式...など

@echo off 
(wmic path Win32_OperatingSystem get /value|find "ProductType=1" > nul) || (echo [e] Server OS & goto :eof) 
setlocal EnableDelayedExpansion 

for /f "delims=" %%a in ('wmic share get name /value ^| findstr /r /v "^$"') do (
     for /f "tokens=2 delims==" %%b in ("%%a") do (
     set VarAdminAllowed=NotAllowed 
     for %%c in (ADMIN$ IPC$ print$ fax$ A$ B$ C$ D$ E$ F$ G$ H$ I$ J$ K$ L$ M$ N$ O$ P$ Q$ R$ S$ T$ U$ V$ W$ X$ Y$ Z$) do (
      if %%b == %%c set VarAdminAllowed=Allowed 
     ) 
     if !VarAdminAllowed! == NotAllowed net share /delete "%%b" /yes 
    ) 
) 

は、株式が存在し、削除するための別の方法かもしれません? 3000 +

答えて

0
@echo off 
    setlocal enableextensions disabledelayedexpansion 

    rem Win32_OperatingSystem class 
    rem https://msdn.microsoft.com/en-us/library/aa394239%28v=vs.85%29.aspx 
    (wmic OS where "ProductType=1" | find "Boot") >nul 2>nul || (
     echo [e] Server OS 
     goto :eof 
    ) 

    rem Win32_Share class 
    rem https://msdn.microsoft.com/en-us/library/aa394435%28v=vs.85%29.aspx 
    wmic share where "Type < 2147483648" call Delete 

オーバー P. S.ドメインのユーザーは、ちょうどwmiクラスによって公開されたメソッドを使用します。

+0

MC ND、ありがとう –