中国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 楼』:  

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 楼』:  

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 楼』:  

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
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

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


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



论坛跳转: