Board logo

标题: [文件操作] [已解决] 批处理自动安装更新时如何显示进度? [打印本页]

作者: 8188589z    时间: 2010-4-27 18:46     标题: [已解决] 批处理自动安装更新时如何显示进度?

系统在安装多个自动更新的时候,总是提示如:“正在安装KB123456更新(第1个更新,总共10个更新)”而我在安装自动更新批处理的时候是写:

@ echo off
start /wait WindowsXP-KB123456-x86-CHS.exe /quiet /norestart /nobackup
echo 正在安装KB123456补丁,请稍候……

      有没有办法让自动更新批处理显示像系统更新那样:“正在安装KB123456更新(第1个更新,总共10个更新)”而不是只显示:“正在安装KB123456补丁,请稍候……”吗?

[ 本帖最后由 8188589z 于 2010-4-28 15:17 编辑 ]
作者: jcy0307    时间: 2010-4-27 19:11

将本批处理 置于补丁目录里 运行即可
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. dir /b *.exe >bd.txt
  4. set a=0
  5. set b=0
  6. for /f %%i in (bd.txt) do set /a a+=1
  7. for /f %%j in (bd.txt) do (
  8. set /a b+=1
  9. cls
  10. echo 正在安装%%j更新(第!b!个更新,共%a%个更新)
  11. %%j /passive /norestart
  12. )
  13. del bd.txt
  14. echo 更新补丁完成,按任意键退出!
  15. pause>nul&exit
复制代码

作者: jcy0307    时间: 2010-4-27 19:15

楼主 请认真查看论坛发帖规则
你发错区了!!!
http://bathome.l3.wuyou.com/thread-963-1-1.html
作者: 8188589z    时间: 2010-4-27 22:05     标题: 回复 2楼 的帖子

谢谢2楼,终于帮我解决了一个难题。但是运行后是不是还能显示前面已安装的补丁呢?就是说在安装第二个以后的补丁时,能不能显示已安装完成的补丁呢?如:
正在安装KB111111更新(第1个更新,共5个更新)
正在安装KB222222更新(第2个更新,共5个更新)
正在安装KB333333更新(第3个更新,共5个更新)
……
补丁安装完成!按任意键退出!
作者: 8188589z    时间: 2010-4-27 22:07     标题: 回复 3楼 的帖子

谢谢3楼提醒,由于是新来的,还不懂,请多多指教!
作者: jcy0307    时间: 2010-4-28 11:44

将代码中cls去掉即可




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2