中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 帮忙看一下这两个批处理错在哪里啊
作者:
标题: 帮忙看一下这两个批处理错在哪里啊 上一主题 | 下一主题
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『楼 主』:  帮忙看一下这两个批处理错在哪里啊

因为是制作纯DOS启动盘,想用批处理制作一个启动菜单,我的设想是先建立一个人如下的菜单
显示一个主菜单,再是一个子菜单,但自己写的批处理有问题,总是改不好,希望各位大虾指教




其中一个子菜单



这是主菜单
@echo off
cls
echo baobao's disk
echo 0.Clone
echo 1.HD
echo 2.Password
echo 3.Recovery
echo 4.Filesysytem
echo 5.Info
echo 6.Ram
echo 7.CMOS
echo 8.MBR
echo 9.Others
echo q.end
choice/c:0123456789q/t:q,160
if errorlevel 0 goto Clone
if errorlevel 1 goto HD
if errorlevel 2 goto Password
if errorlevel 3 goto Recovery
if errorlevel 4 goto Filesysytem
if errorlevel 5 goto Info
if errorlevel 6 goto Ram
if errorlevel 7 goto CMOS
if errorlevel 8 goto MBR
if errorlevel 9 goto Others
if errorlevel q goto end
:Clone
call Clone.bat
:HD
call HD.bat
:Password
call Password.bat
:Recovery
call Recovery.bat
:Filesysytem
call Filesysytem.bat
:Info
call Info.bat
:Ram
call Ram.bat
:CMOS
call CMOS.bat
:MBR
call MBR.bat
:Others
call Others.bat
:end

其中一个字菜单

clone.bat
echo off
cls
path=x:\baobao\baobao\clone\ghost;x:\baobao\baobao\clone\pqdi;x:\baobao\baobao\clone\acronis
echo 0.Ghost
echo 1.Acronis
echo 2.PQ Driver image
echo b.Back
choice/c:012b/t:b,160
if errorlevel 0 goto Ghost
if errorlevel 1 goto Acronis
if errorlevel 2 goto PQ Driver image
if errorlevel b goto Back
:Ghost
ghost.exe
goto end
:Acronis
acronis.exe
goto end
:PQ Driver image
pqdi.exe
goto end
:Back
call baobao.bat
:end
exit

[ Last edited by jsjcjsjc on 2008-1-6 at 10:01 PM ]

2008-1-6 21:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 2 楼』:  

我把两个改成如下,原本是没有问题的,可是我发现,第二次进入主菜单时会直接进入clone.bat,并且启动了ghost
主菜单
@echo off
cls
echo baobao's disk
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
echo 9.end
choice/c:123456789/t:9,160
if errorlevel 9 goto end
if errorlevel 8 goto Others
if errorlevel 7 goto MBR
if errorlevel 6 goto Ram
if errorlevel 5 goto Filesysytem
if errorlevel 4 goto Recovery
if errorlevel 3 goto Password
if errorlevel 2 goto HD
if errorlevel 1 goto Clone
:Clone
call Clone.bat
goto exit
:HD
call HD.bat
goto exit
:Password
call Password.bat
goto exit
:Recovery
call Recovery.bat
:Filesysytem
call Filesysytem.bat
goto exit
:Ram
call Ram.bat
:MBR
call MBR.bat
goto exit
:Others
call Others.bat
goto exit
:exit
clone.bat子菜单
@echo off
cls
echo 4.Ghost
echo 3.Acronis
echo 2.PQ Driver image
echo 1.Back
choice/c:1234/t:1,160
if errorlevel 4 goto Ghost
if errorlevel 3 goto Acronis
if errorlevel 2 goto PQ Driver image
if errorlevel 1 goto Back
:Ghost
cd x:\baobao\baobao\clone\ghost
ghost.exe
goto exit
:Acronis
cd x:\baobao\baobao\clone\acronis
acronis.exe
goto exit
:PQ Driver image
cd x:\baobao\baobao\clone\pqdi
pqdi.exe
goto exit
:Back
call baobao.bat
goto exit
:exit
还有就是有什么办法让它执行完一个程序后回到主菜单呢

[ Last edited by jsjcjsjc on 2008-1-6 at 10:00 PM ]

2008-1-6 21:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 3 楼』:  

我视力很好,把字体改小了再回你....



第一高手    第二高手

2008-1-6 21:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by fastslz at 2008-1-6 09:49 PM:
我视力很好,把字体改小了再回你....

OK 期待啊

2008-1-6 22:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 5 楼』:  

choice最大等待时间99秒
@echo off
cls
echo baobao's disk
echo.
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
echo 9.end
echo.
choice /n /c:123456789 /t:7,90 Please select a button and wait for 90 seconds default activated 7
if errorlevel 9 goto end
if errorlevel 8 goto Others
if errorlevel 7 goto MBR
if errorlevel 6 goto Ram
if errorlevel 5 goto Filesysytem
if errorlevel 4 goto Recovery
if errorlevel 3 goto Password
if errorlevel 2 goto HD
if errorlevel 1 goto Clone
goto end

:Clone
call Clone.bat
goto exit

:HD
call HD.bat
goto exit

:Password
call Password.bat
goto exit

:Recovery
call Recovery.bat
goto exit

:Filesysytem
call Filesysytem.bat
goto exit

:Ram
call Ram.bat
goto exit

:MBR
call MBR.bat
goto exit

:Others
call Others.bat
goto exit

:exit

:end




第一高手    第二高手

2008-1-6 22:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by fastslz at 2008-1-6 10:13 PM:
choice最大等待时间99秒
[code]@echo off
cls
echo baobao's disk
echo.
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
...

确实不错啊 不过怎么样才能使完成一个程序后回到主菜单呢

2008-1-6 22:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by jsjcjsjc at 2008-1-6 21:34:
还有就是有什么办法让它执行完一个程序后回到主菜单呢...


@echo off
:menu
cls
echo baobao's disk
echo.
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
echo 9.end
echo.
choice /n /c:123456789 /t:7,90 Please select a button and wait for 90 seconds default activated 7
if errorlevel 9 goto end
if errorlevel 8 goto Others
if errorlevel 7 goto MBR
if errorlevel 6 goto Ram
if errorlevel 5 goto Filesysytem
if errorlevel 4 goto Recovery
if errorlevel 3 goto Password
if errorlevel 2 goto HD
if errorlevel 1 goto Clone
goto end

:Clone
call Clone.bat
goto menu

:HD
call HD.bat
goto menu

:Password
call Password.bat
goto menu

:Recovery
call Recovery.bat
goto menu

:Filesysytem
call Filesysytem.bat
goto menu

:Ram
call Ram.bat
goto menu

:MBR
call MBR.bat
goto menu

:Others
call Others.bat
goto menu

:end

@echo off
cls
echo 4.Ghost
echo 3.Acronis
echo 2.PQ Driver image
echo 1.Back
choice /n /c:1234 /t:1,90 Please select a button and wait for 90 seconds default activated 1
if errorlevel 4 goto Ghost
if errorlevel 3 goto Acronis
if errorlevel 2 goto PQ_Driver_image
if errorlevel 1 goto Back
goto exit

:Ghost
x:
cd\
cd x:\baobao\baobao\clone\ghost
ghost.exe
goto exit

:Acronis
x:
cd\
cd x:\baobao\baobao\clone\acronis
acronis.exe
goto exit

:PQ_Driver_image
x:
cd\
cd x:\baobao\baobao\clone\pqdi
pqdi.exe
goto exit

:Back
call baobao.bat
goto exit

:exit




第一高手    第二高手

2008-1-6 22:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 8 楼』:  

乖乖 这个论坛的DOS确实好像很牛啊
我在龙族悬赏50都没人啊,找到好东西了
uote]Originally posted by fastslz at 2008-1-6 10:27 PM:


[code]@echo off
:menu
cls
echo baobao's disk
echo.
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
echo 9.end
echo.
... [/quote]

2008-1-6 22:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 9 楼』:  

对了 顺便问一下怎么添加path啊,我在批处理中添加PATH,只要一添加总是出错
例如(第3行)
@echo off
cls
path=x:\baobao
echo baobao's disk
echo.
echo 1.Clone
echo 2.HD
echo 3.Password
echo 4.Recovery
echo 5.Filesysytem
echo 6.Ram
echo 7.MBR
echo 8.Others
echo 9.end
echo.
choice /n /c:123456789 /t:7,90 Please select a button and wait for 90 seconds default activated 7
if errorlevel 9 goto end
if errorlevel 8 goto Others
if errorlevel 7 goto MBR
if errorlevel 6 goto Ram
if errorlevel 5 goto Filesysytem
if errorlevel 4 goto Recovery
if errorlevel 3 goto Password
if errorlevel 2 goto HD
if errorlevel 1 goto Clone
goto end

:Clone
call Clone.bat
goto exit

:HD
call HD.bat
goto exit

:Password
call Password.bat
goto exit

:Recovery
call Recovery.bat
goto exit

:Filesysytem
call Filesysytem.bat
goto exit

:Ram
call Ram.bat
goto exit

:MBR
call MBR.bat
goto exit

:Others
call Others.bat
goto exit

:exit

:end

2008-1-6 22:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 10 楼』:  

@echo off
path=%path%;x:\baobao
cls
:menu
.........



第一高手    第二高手

2008-1-6 22:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jsjcjsjc
初级用户





积分 85
发帖 35
注册 2008-1-6
状态 离线
『第 11 楼』:  

3Q 非常感谢

2008-1-6 23:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: