利用批处理快速安装系统补丁
第一步:依次点击“开始→运行”然后在“运行”窗口中输入“CMD”并回车,此时将会打开命令提示符窗口;
第二步:假如你的补丁程序是存放在C盘根目录下的“buding”文件夹中,那么将当前命令提示符的状态切换为“C:\buding>”状态;
第三步:在命令提示符下输入“dir /b>list.txt”命令并回车执行,该命令的意思是仅提取“buding”目录中的所有文件的文件名并将其保存在list.txt文档中,参数“/b”的意思是不显示文件的头信息及统计信息;
第四步:用微软Word打开list.txt文件,然后依次点击“编辑→查找”,此时将会打开“查找和替换”窗口;
第五步:在打开的“查找和替换”窗口中把“查找的内容”设为“^p”,然后点击“替换”标签,接着在“替换为”输入框中将替换的内容设置为“ /U /Q /Z^pstart /wait ”,注意在wait后要有一个空格(如图1);
第六步:点击“全部替换”,此时World文档的内容将会变为如图2所示的内容,然后我们还需要把图2内容修改为图3所示的内容。
说明:“Start”是Windows系统自带的DOS命令,它的作用是用来调用应用程序的;“/wait”表示启用应用程序并等待其结束,然后再执行下一个应用程序;参数“/U”表示使用无人参与模式,参数“/Q”表示无用户交互,参数“/Z”表示安装完成时不重新启动计算机
最后需要说明的是当补丁程序图标类似图4所示的图标时,则不用参数“/Z”,否则会出错!例如在图3最后第二行就没有用参数“/Z”。
第七步:保存图3所示的内容,然后将“list.txt”文件的扩展名改为“bat”即可制作了安装补丁程序的批处理程序。
运行“list.bat”则可以实现在无人参与的情况下自动安装补丁程序。
本文到此就结束了,你看过后感觉如何,是不是感觉有点投机取巧呢?呵呵,希望本文能给你带来一点启示.
Deep Freeze冰点V6.1企业版
以下批处理只对系统补丁有效,对office补丁无效
我在大部分语句都加上了注释,如看到某个命令的参数不懂,可以运行cmd,输入那个命令,加上/?查看说明,如(for /?)。 现在打补丁是我们需要经常进行的重要事情了,不过补丁多了也是个烦恼 每次重装后都去下载来安装吗?麻烦; 使用网上放出的补丁集?这次下载了某个补丁集,如果微软今天又发新补丁了,又去下载一个差不多100MB的庞大东西吗; 于是我们平常就会下载了一大堆如WindowsXP-KB873339-x86-CHS的补丁,但一个一个安装我死给你看好了-_- 使用一些自动打补丁的软件,如:金山漏洞修复?这个倒是可以,不过自己弄一个比较有成就感^_^ echo off ::关闭显示信息 del list.log /q ::删除上次运行后留下的文件 echo 正在检测已经的安装补丁 for /f "delims=- tokens=2" %%i in ('dir *-kb*.exe /b /on') do REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\HotFix\%%i" >nul || dir /b *%%i*.exe >>list.log && cls && echo 正在检测已经的安装补丁 ::从文件中取出一个补丁的名字,截取中间的补丁标号(如KB873339),到注册表查询这个是否已经安装了,没有就将其存放到list.log文件里 cls ::清屏 for /f "eol=o eol=O " %%j in (list.log) do echo 正在安装补丁%%j && %%j /quiet /norestart ::从list.log文件中取出一个补丁的名字,利用参数(/quiet /norestart)进行安装无人安装 cls echo 安装了的补丁(list.log):& type list.log | more ::显示安装了的补丁的列表,more是用来防止补丁过多,分屏显示用的 pause ::暂停让别人看列表 del list1.log /q ::删除使用过的list1.log文件 将上面引用的内容复制到记事本里面,然后按另存为,文件类型选择所有文件,文件名为setup.cmd(使用cmd而不用bat是因为cmd对中文名以及长文件名的支持好,况且应该没有人用98而去打补丁吧); 最后将setup.cmd文件放到补丁的目录下,双击即可运行并批量安装补丁,而且可以跳过已经安装了的补丁; 注意:千万不要把补丁的文件名修改掉,要使用原来的文件名,如:WindowsXP-KB873339-x86-CHS |
转载于:https://blog.51cto.com/100114/20547