更新批处理文件:实现条件参数

时间:2015-12-21 22:15:45

标签: windows batch-file

我在IT帮助台工作,是编码的新手,但是将这个批处理文件放在一起,以便更快地完成我们的夜间更新:

@echo off
echo.
echo          RTC Customer Care - Variety Pre-Eigen Updater
echo      (Continue along with 'ENTER' to reach desired update.)
echo.
pause
echo.
echo ====================================
echo Transfer Required Files to C: Drive?
echo ====================================
echo.
echo.
pause
cd /d h:\smsback
call vwiw3net2.bat
echo.
echo                     (Finished copying files)
echo             Note: If transfer failed, re-run updater.
pause
echo.
echo ===========================
echo Execute Part 1/2 of Update?
echo ===========================
echo.
echo.
pause
echo                 (Follow prompts till completion)
start /d "c:\smsback\1_win3_1" WindowsInstaller-KB893803-v2-x86.exe
pause
echo.
echo ===========================
echo Execute Part 2/2 of Update?
echo ===========================
echo.
echo.
pause
echo                 (Follow prompts till completion)
echo          Note: 2nd update takes a few minutes to display.
start /d "c:\smsback\2_net2" NetFx20SP2_x86.exe
pause
echo.
echo.
echo ==================================================
echo ATTENTION: Register will RESTART to finish update.
echo ==================================================
echo.
pause
shutdown.exe /r /t 05
(goto) 2>nul & del "%~f0"

验证安装更新会有什么好的条件参数?文件大小?只是不想运行脚本来更新2并打开/关闭之前的步骤。

1 个答案:

答案 0 :(得分:0)

首先,打开命令提示符窗口并在那里运行start /?help start会导致获得此命令的帮助。可以在有关/Dpath的输出帮助以及此命令的其他选项中读取它。 /D和路径之间没有空格。

其次,开始将第一个双引号字符串解释为标题。因此,如果任何其他参数用双引号括起来,则应在命令行中指定"""useful title" start 作为第一个参数。

第三,如果使用 start 从批处理文件中进行安装,最好将此命令与参数/wait一起使用,因为无法并行运行多个安装。用于安装每个安全更新的msiexec不允许同时运行多个安装/修复/卸载操作。

第四,Windows安全更新的大多数可执行文件都是控制台应用程序,可以在批处理文件中运行,而无需使用命令 start 。而不是

start /d "c:\smsback\1_win3_1" WindowsInstaller-KB893803-v2-x86.exe

最好只使用:

C:\smsback\1_win3_1\WindowsInstaller-KB893803-v2-x86.exe

第五,Windows安全更新的可执行文件在错误时以大于0的值退出,在成功时退出0。因此,在运行安全更新可执行文件而没有上面所写的命令 start 之后,可以使用如下所示的行来检查可执行文件的返回值。

if errorlevel 1 echo Failed to install KB893803-v2-x86, error code %ERRORLEVEL%.

请参阅Windows Installer Error MessagesMsiExec.exe and InstMsi.exe Error Messages

最后,可以从Windows注册表项HKEY_LOCAL_MACHINE\Software\Microsoft\Updates及其子项中查询已安装的更新。