标题: [系统相关] 【已结】自己写的批量安装windows更新补丁的批处理 [打印本页]
作者: zcy85611 时间: 2008-12-30 13:04 标题: 【已结】自己写的批量安装windows更新补丁的批处理
- @echo off & setlocal EnableDelayedExpansion
- dir /a /b /od>>install1.bat
- for /f "delims=" %%i in (install1.bat) do (
- set n=%%i
- set n=!n:.exe=.exe /norestart /quiet!
- echo !n!>>install2.bat
- )
- find /v ".bat" install2.bat>>install3.bat
- for /f "eol=- tokens=*" %%a in (install3.bat) do echo %%a>>install.bat
- del install1.bat
- del install2.bat
- del install3.bat
- start install.bat
- pause>nul
- del install.bat
- pause
复制代码
dir /a /b /od>>install1.bat这段代码非原创,以前偶然间看到的
其余的内容有这几天在论坛中学习中,自己写出来~在此感谢各位版主的指导~
使用方法:将更新补丁和代码放在一个文件夹里,执行即可。
对于>我总是用不好,本来想只产生一个install.bat文件,然后每次把文本内容用>覆盖到install.bat,但是发现结果跟想象的完全不一样,不知道是怎么回事。
作者: terse 时间: 2008-12-30 13:45
将更新补丁和代码放在一个文件夹 我一直用下面的- for %%i in (*.exe) do start "" /wait "%%i" /passive /norestart /nobackup /o /n
复制代码
作者: zcy85611 时间: 2008-12-30 14:08
哎~~原来有这么简单方法啊~看来我写的太麻烦了,呵呵~又学会一招了~
作者: zcy85611 时间: 2009-1-12 17:26
原帖由 terse 于 2008-12-30 13:45 发表
将更新补丁和代码放在一个文件夹 我一直用下面的for %%i in (*.exe) do start "" /wait "%%i" /passive /norestart /nobackup /o /n
- @echo off
- set /p m=请输入路径:
- for /f %%a in ('dir %m%\*.exe /b') do (
- echo 正在安装%%a
- start /wait %%a /quiet /norestart 2>nul
- echo 安装完毕
- )
- pause
复制代码
我把代码改进了一下,terse兄的代码运行以后没有提示,看起来怪怪的。我改成了需要输入路径,并且在运行的时候提示正在安装,运行完毕以后提示安装完毕。感谢terse兄提供的思路~不然以后我还是用我以前的傻办法在运行补丁~~
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |