Board logo

标题: 一次性安装系统补丁 [打印本页]

作者: dcl     时间: 2006-11-18 03:16    标题: 一次性安装系统补丁

FOR /R %%F IN (.\*.exe) DO @((@findstr _SFX_CAB_EXE_PATH "%%F" >nul && @start /wait %%F /Quiet /Norestart /Nobackup)|| @start /wait %%F )

从网上找的脚本,存为bat放在补丁目录就可以了
大家帮忙解释一下,还有
这个可以把补丁打全吗??
谢谢
作者: redtek     时间: 2006-11-18 04:25
) 关于发贴~:)

  请 dd兄 发提问贴时标题后加注 “?” 问号,可以快速看标题时认为是在提问~:)
  如果不加问号,很多情况下以为 dd兄 是在发布 “一次性安装系统补丁” 的教学经验贴,
  所以熟悉命令或是熟悉安装补丁以及它的参数的网友以为这是教学贴而不会进入,
  间接地错过了解答的机会~:)


) 关于拆解上面脚本原理:

  1) 能过for命令枚举所有扩展名为 .exe 的文件(因为补丁的扩展名名是.exe文件)

  2) findstr查找补丁程序中是否含有 “_SFX_CAB_EXE_PATH ” 字串。
     补丁程序是被打过包的,使用专门解包的工具就可以看到其它补丁程序的解包后的内容:)

  3) 如果补丁含有 “_SFX_CAB_EXE_PATH ” 字串,则以带参数运行安装补丁模式。
     如果未含有上面字串,则普通无参数模式运行补丁程序。


) 补丁是否可以打全的问题

  如果补丁程序下载全了就可以打全(没有意外情况发生的条件下)。

) 如何知道补丁的参数?

  
  补丁文件名.EXE   --help
  
  执行上面指命就可以看到补丁运行时可以指定的运行参数~:)

  上面脚本中所用到的参数:
  
  /Quiet    安静模式,没有用户交互操作或显示。
  /Norestart  补丁安装完后不要重新启动
  /Nobackup  不备份卸载需要的文件
  
[ Last edited by redtek on 2006-11-17 at 04:27 PM ]
作者: voiL     时间: 2006-11-18 11:35

for %%i in (*.exe) do %%i /passive /nostart /nobackup
这个也行,我经常都是用这个来打的补丁.

/passive 为只显示进度,也是自动安装的.
/nostart 和 /nobackup大家都知道了.就不多说了.
作者: zgren1979     时间: 2006-11-19 15:16
受教.....
作者: dos9527     时间: 2006-11-20 06:39
非常实用
作者: again123     时间: 2006-11-21 04:02
又学到野了!!!
作者: cnds     时间: 2010-10-18 19:25
实用,我一直寻求这个东西。太好了。
作者: ny350101     时间: 2010-11-8 12:38
很方便