![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 05:47 |
共 48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 哪位高人帮我看一下这个批处理? |
| 可打印版本 2,745 / 17 |
| 第1楼 tclshx | 发表于 2006-09-16 10:37 |
| 中级用户 发帖 64 积分 249 | |
|
哪位高人帮我看一下这个批处理? @echo OFF
Title=安装XPE硬盘版 :begin cls COLOR 2F echo. echo. echo XPE硬盘安装版 echo ============================================== echo. echo 即将安装“小型XPE 硬盘版”到您的系统! echo 本安装程序不会修改系统 MBR 及分区表等信息。 echo. Echo 请按任意键开始安装...... PAUSE >NUL Set RP=RP For %%I In (C D E F G H I J K L M N O P Q R S T U V W X Y Z) Do If Exist %%I:\BOOT.INI Set RP=%%I If %RP%==RP Goto Exit FIND "Avldr.xpe" %RP%:\BOOT.INI >NUL If %Errorlevel%==0 Goto Err1 :Install If Exist %RP%:\AVLDR.XPE ATTRIB -S -H -R %RP%:\AVLDR.XPE If Exist %RP%:\LDRXPE ATTRIB -S -H -R %RP%:\LDRXPE Echo. Echo 正在复制文件,请稍候 ...... Copy AVLDR.XPE %RP%:\ /Y>NUL Copy LDRXPE %RP%:\ /Y>NUL if not exist %RP%:\MININT\nul md %RP%:\MININT>NUL 2>nul xcopy /y /r /e /q /h \I386\*.* %RP%:\MININT\>NUL 2>nul ATTRIB -S -H -R %RP%:\BOOT.INI If Exist %RP%:\BOOT.BAK ( ATTRIB -S -H -R %RP%:\BOOT.BAK Del %RP%:\BOOT.BAK /Q ) Copy %RP%:\BOOT.INI %RP%:\BOOT.BAK>NUL TYPE %RP%:\BOOT.BAK|FIND /V "Avldr">%RP%:\BOOT.INI Echo C:\Avldr.xpe="启动WinPE系统">>%RP%:\BOOT.INI if not exist %RP%:\PROGRAMS\nul md %RP%:\PROGRAMS>NUL 2>nul xcopy /y /e /q /h \PROGRAMS\*.* %RP%:\PROGRAMS\>NUL 2>nul ATTRIB +S +H +R %RP%:\AVLDR.XPE ATTRIB +S +H +R %RP%:\LDRXPE ATTRIB +S +H +R %RP%:\BOOT.INI ATTRIB +S +H +R %RP%:\BOOT.BAK ATTRIB +S +H +R %RP%:\PROGRAMS /D /S ATTRIB +S +H +R %RP%:\MININT /D /S Goto SUCCESS :Err1 CLS Echo 好像你的机器中已经安装了 WinPE 了,请选择以下操作选项。 Echo. Echo 1.卸载原有的 WinPE,并且重新安装。 Echo 2.退出安装 Echo. Set Choice= Set /P Choice=请选择要进行的操作 (1/2) ,然后按回车: If Not '%Choice%'=='' SET Choice=%Choice:~0,1% If /I '%Choice%'=='1' GOTO Install If /I '%Choice%'=='2' EXIT Goto Err1 :Exit CLS Echo 好像你的机器中没有安装操作系统哦,请确认后再执行本安装程序。 Echo. Echo 请按任意键退出 。。。 PAUSE >NUL Exit :SUCCESS CLS Echo 已经成功将WinPE安装到你的 %RP%: 盘。 Echo. Echo 系统分区中的 BOOT.INI 备份为 BOOT.BAK。 Echo. Echo 请按任意键退出。。。 PAUSE >NUL Exit 这个批处理是用来将光盘上的XPE系统安装到硬盘上的,出现的问题是:无法将光盘根目录PROGRAMS复制到硬盘的系统分区;无法将光盘根目录I386中的子目录和文件复制到硬盘系统分区中的MININT文件夹。ATTRIB.EXE、FIND.EXE、XCOPY.EXE、LDRXPE、AVLDR.XPE是放在光盘根目录中的一个文件夹中的。 请帮看一下吧,到底哪里有错? |
|
| 第2楼 namejm | 发表于 2006-09-16 11:29 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
这段代码有点熟悉,难道是在深山红叶的基础上修改而来?
|
|
| 第3楼 tclshx | 发表于 2006-09-16 19:41 |
| 中级用户 发帖 64 积分 249 | |
Originally posted by namejm at 2006-9-16 11:29 AM: 是在无忧老毛桃的一个批处理和深山红叶的基础上修改而来的. |
|
| 第4楼 namejm | 发表于 2006-09-17 00:54 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
首先,你应该保证你的XPE文件保存在最后一个根目录中存在boot.ini的硬盘分区上——通观你的代码,你可能在这一步都已经处理错了,推测你的原意是想判断根目录中存在boot.ini的第一个硬盘分区,然后再做后面的操作。
|
|
| 第5楼 tclshx | 发表于 2006-09-17 04:00 |
| 中级用户 发帖 64 积分 249 | |
Originally posted by namejm at 2006-9-17 12:54 AM: 我每次运行都是无法复制那两个目录,能帮我改一下吗? |
|
| 第6楼 namejm | 发表于 2006-09-17 06:18 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
请先介绍你的意图:XPE文件放在什么地方?想把XPE复制到哪个分区下……越详细越有助于问题的解决。
[ Last edited by namejm on 2006-9-17 at 06:20 ] |
|
| 第7楼 tclshx | 发表于 2006-09-17 06:55 |
| 中级用户 发帖 64 积分 249 | |
Originally posted by namejm at 2006-9-17 06:18 AM: 我的XPE文件放在光盘根目录,想把它复制到系统分区(定为C盘也行),并修改BOOT.INI,在里面加入C:\Avldr.xpe="启动WinPE系统" 一行,我的文件主要有以下:WIN51IP.SP2、I386目录、PROGRAMS目录、WIN51,其中I3686目录复制到系统区后要改成MININT目录名。 |
|
| 第8楼 namejm | 发表于 2006-09-17 10:51 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
在你顶楼代码的基础上进行改动,得到如下代码,此代码应放在硬盘上运行,并保证是以管理员权限运行它,请测试是否可以成功执行:
[ Last edited by namejm on 2006-9-17 at 10:54 ] |
|
| 第9楼 tclshx | 发表于 2006-09-17 12:23 |
| 中级用户 发帖 64 积分 249 | |
Originally posted by namejm at 2006-9-17 10:51 AM: |
|
| 第10楼 不得不爱 | 发表于 2006-09-17 22:02 |
| 超级版主 发帖 2,044 积分 5,310 来自 四川南充 | |
|
顶楼上的BAT文件是在光盘上运行的吗?
|
|
| 第11楼 tclshx | 发表于 2006-09-17 22:56 |
| 中级用户 发帖 64 积分 249 | |
Originally posted by qwe1234567 at 2006-9-17 10:02 PM: 要求可在光盘和硬盘上运行,有空帮看一下吧! |
|
| 第12楼 fastslz | 发表于 2006-09-17 23:37 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
请善用.\和..\
.\i386 表示当前目录下的I386 ..\i386 表示上级目录下的I386 你没有说明目录结构,就一楼我提示一下,自己再掂量一下巴 批处理在光盘根目录的例子 ..\文件夹名\xcopy.exe /y /r /e /q /h .\I386\*.* %RP%:\MININT\>NUL 2>nul 或者: 批处理和xcopy.exe在同目录的例子 xcopy.exe /y /r /e /q /h ..\I386\*.* %RP%:\MININT\>NUL 2>nul |
|
| 第13楼 namejm | 发表于 2006-09-18 00:24 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
Originally posted by tclshx at 2006-9-17 22:56: 那应该把目录结构帖出来看看,否则我们都只是在盲人摸象而已。 |
|
| 第14楼 tclshx | 发表于 2006-09-18 00:31 |
| 中级用户 发帖 64 积分 249 | |
|
批处理放在"WINPE安装"目录中
附件 Snap1.jpg (52.92 KiB) |
|
| 第15楼 wang6610 | 发表于 2006-09-18 02:22 |
| 银牌会员 发帖 488 积分 1,246 | |
|
应该指出那一步调试不通过要复制文件的源路径 目标路径等。
|
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |