如何编写bat文件一次性安装所有系统补丁?

2025-01-19 07:05:11
推荐回答(3个)
回答1:

<第一种方法>

⒈假设已经下载了“Windows XP”的Q111111.exe......Qnnnnnn“N”个系统更新补丁文件,将这
“N”个系统更新补丁文件和从http://www.yesky.com/imagesnew/software/030917/psshutdown.zip
下载的“psshutdown”拷贝到任意盘符的非中文名的文件夹中,例如“HotFix”。
⒉用记事本编辑以下内容:
@echo off
title 正在安装N项重要更新,需要较长时间,请稍候……
CLS
@echo off
ECHO.
ECHO 下面将自动安装Windows XP 简体中文版 微软官方发布的N个重要更新补丁!
ECHO.
ECHO 请不要关闭此窗口!
ECHO.
ECHO 准备安装 Windows XP 补丁程序
ECHO.
@echo On
@echo 正在安装第1项更新:Q111111.exe ......
@echo off
start /wait Q111111.exe -z -q
@echo On
@echo ...... 安装完成;
.
.
.
... N ...
.
.
@echo On
@echo 正在安装第N项更新:Qnnnnnn.exe ......
@echo off
start /wait Qnnnnnn.exe -z -q
@echo On
@echo ...... 安装完成; .

ECHO.
ECHO Restarting the PC in 1 minute...
psshutdown.exe -r -t 60 -f -m "更新安装已经全部完成!请关闭所有正在运行的其它程序!保存好所有必须保存的数据!系统将在60秒后重新启动!现在进入倒计时......"
将其保存后缀名为".bat"的批处理文件,例如“HotFix.bat”并将其同样保存在文件夹“HotFix”中。
小提示:
Windows Update命令参数含义:
[-U][-f][-o][-z][-q][-I]
-U 表示Unattended模式,即无人参予模式
-f 在关机时强行关闭其他程序
-o 覆盖OEM文件,不提示
-z 表示安装后不重新启动计算机
-q 表示安装的过程中不出现提示信息
-I 表示列出安装的修补程序
参数获得:
假如补丁为E:\Q111111.exe,在“运行”中写:
E:\Q111111.exe /?就可以得到补丁安装时可
以添加的参数。
⒊启动“Win RAR”程序,在程序主窗口中点击工具栏“文件”,在下拉菜单中选点“浏览文件夹”,
选中“Windows XP”,点“确定”。再次点击工具栏“文件”,点选“全部选定”。继续点击工具栏“命
令”,在下拉菜单中选点“添加文件到压缩文件中”。打开“压缩文件名和参数”,在“压缩文件名”中
输入“Windows XP HotFix”文件名,勾选“创建自解压格式压缩文件”。切换到“高级”属性页,点击
“自解压选项”按钮。在“高级自解压选项”中的"常规"属性页“的“解压后运行”的对话框里输入批处
理文件名“HotFix”,在“模式”属性页勾选“解包到临时文件夹”,视情设好“可选的询问”和“询问
标题”。在“安静模式中”中点选“全部显示”、在“覆盖方式”中点选“覆盖所有文件”!如还想个性
化,则还可以依次向后......按需勾填有关项目......点两次确定退出后,WinRAR开始创建需要的自解压
压缩文件.
⒋经过上述3步,以后在重装操作系统后,只需运行该自解压文件即可自动完成所有补丁的安装工作.

注意: 如果要求安装完成立即退出,不重新启动系统,则不需要“psshutdown”文件,且必须将最后
一段用如下命令行直接替代:
:finish
@echo on
@echo 安装全部完成,请按任意键退出!
@echo off
@pause
@color 07
@echo on

<第二种方法>

我没有用过你说的那个软件!我用的是微软的小工具!然后在写个批处理 就可以安装了!
@echo off
setlocal
set ATHTOFIXES=XPSP2-okok-eng
%WindowsXP-KB899589-x86-ENU -z -q
%ATHTOFIXES%qchain.exe
其中set ATHTOFIXES=XPSP2-okok-eng 中的XPSP2-okok-eng 是那个软件和补丁在的文件夹的名称!在%WindowsXP-KB899589-x86-ENU -z -q 中是补丁的名称你也可以把补丁 改成简单的名字然后填在% 和-z -q的中间 要注意的是在-z -q的-前有个空格!“)

回答2:

bat是dos下的批处理文件

批处理运用:查常见病毒

其实,对于上网的人来说,遇到病毒是在所难免的。然而,如果真的不幸感染,怎样才能发现呢?难道真的要买昂贵的杀毒软件吗?不一定。

我们可以编写批处理来查一些常见的网络病毒。如果确认感染病毒,可以下载专用杀毒工具进行查杀,或采取其他途径杀毒。

下面,我以欢乐时光为例进行分析:

主文件:1.bat
其它文件:2.bat 3.bat

1.bat代码:
@if exist c:\folder.htt call 2.bat
@if exist d:\folder.htt call 2.bat
@if exist e:\folder.htt call 2.bat
@if exist f:\folder.htt call 2.bat

2.bat代码:
@echo 发现欢乐时光病毒!
@call 3.bat
@pause

3.bat代码:
@c:
@dir *.htt *.ini /s/a>1.txt
@d:
@dir *.htt *.ini /s/a>1.txt
@e:
@dir *.htt *.ini /s/a>1.txt

这样,如果中毒,那么必定会存在大量folder.htt和Desktop.ini,通过这样可以粗略的检查计算机是否感染病毒。

批处理运用三:文件处理

假设,我要大规模的做文件的移动、删除等,如果在Windows里操作不免会出现错误,而且这些错误不易察觉。因此,用批处理进行操作,不但简单易行,而且容易发现错误并可以及时纠正。

例如,我要将D盘的htm文件移动到E盘,再格式化D盘,然后将文件移回D盘,并改后缀为html。

1.bat代码:
@E:
@Md d
@D:
@Copy *.htm e:\d
@if exist e:\d\*.htm call 2.bat

2.bat代码:
@Format d:/q
@Copy e:\d\*.htm d:
@D:
@Ren *.htm *.html

回答3:

建议你使用 360安全卫士 的系统漏洞检测功能。可以自动检测出已知漏洞并从微软网站下载相应补丁,所有补丁安装完后才提示你重新启动。