Windows批处理 - WMIC卸载软件

时间:2017-05-12 09:51:57

标签: batch-file uninstall

今天我尝试创建一个卸载软件列表的脚本

setlocal enabledelayedexpansion
set list='{3B7E914A-93D5-4A29-92BB-AF8C3F66C431}' '{AEE363B0-7E60-43B7-8CB9-111ED29E68CD}'
rem list  = 'skype' 'jabber'
for %%a in (!list!) do (
set process=%%a
echo -----------------------------
echo var = %%a
echo.
wmic product where "identifyingnumber like %%a " call uninstall /nointeractive
echo ----------------------------- 
)
endlocal

我的脚本完成了这项工作,但我认为如果两个软件具有相同或相似的识别号,我的命令就会很危险。

如何在不使用的情况下卸载特定密钥"如" ?

wmic product where "identifyingnumber like %%a " call uninstall 
thx和 对不起我的英语..我是法语

1 个答案:

答案 0 :(得分:1)

我认为不需要延迟扩展,并且在循环内设置/回显似乎也是不必要的

@Echo Off
Set "list={3B7E914A-93D5-4A29-92BB-AF8C3F66C431} {AEE363B0-7E60-43B7-8CB9-111ED29E68CD}"
For %%A In (%list%) Do WMIC Product Where "IdentifyingNumber='%%A'" Call Uninstall

我还没有将您提供的开关添加到卸载中,因为我不知道它是否正确。如果您确定它适用于这些应用程序,请随意添加它。