如果命令成功,则转到下一个

时间:2014-10-20 16:16:09

标签: windows batch-file ssl proxy

我正在编写导入证书然后设置代理设置的批处理文件。我希望仅在成功安装证书时才继续设置代理

certutil.exe -addstore -f "CA" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"
certutil.exe -addstore -f "TrustedPublisher" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"
certutil.exe -addstore -f "root" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"

在继续下两个命令之前,我在此处检查最后三个命令是否成功?

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d myproxyaddress

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

如果您不希望在处理第一个命令之前启动下一个命令行,则可以使用“开始”命令并使用“/ wait”开关。这将执行命令并等待它完成。这看起来像是:

start /wait certutil.exe -addstore -f "CA" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"
if %errorlevel% neq 0 exit /b %errorlevel% 
start /wait certutil.exe -addstore -f "TrustedPublisher" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"
if %errorlevel% neq 0 exit /b %errorlevel%
start /wait certutil.exe -addstore -f "root" "C:\Users\%Username%\AppData\Local\Temp\IXP000.TMP\cert.cer"
if %errorlevel% neq 0 exit /b %errorlevel%