中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-30 03:46
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 怎样在CALL调用下一个BAT后,终止本身。 查看 1,052 回复 3
楼 主 怎样在CALL调用下一个BAT后,终止本身。 发表于 2006-04-04 02:16 ·  中国 广东 珠海 电信
初级用户
积分 70
发帖 24
注册 2005-09-20 00:43
20年会员
UID 42654
状态 离线
@echo off
LH KILLER
LH DOSKEY
LH CTMOUSE

if "%bootcon%" == "A" goto _NDIS
if "%bootcon%" == "B" goto _PXE
if "%bootcon%" == "C" goto _other
if "%bootcon%" == "D" goto _bak
if "%bootcon%" == "E" goto _tools


:_NDIS
prompt $p$g
call \net\doit.bat
\net\netbind.com
netbind
goto _end


:_PXE
prompt $p$g
\net\Undipd.com 0x60
goto _end


:_other
prompt $p$g

goto _end


:_bak
prompt $p$g
a:
call bak.BAT (如:想在掉用这个BAT后,自身退出,让下面的不要执行)

:_tools
XMSDSK 16384 /Y
FINDRAMD
path=a:\;%ramdrive%;a:\NTFSDOS;a:\driver;a:\vc;a:\tools
LH DOSLFN /C+ /Z:CP936UNI.TBL
md %ramdrive%\Temp
set tmp=%ramdrive%\temp
set temp=%ramdrive%\temp
LH SMARTDRV
PCCACHE /SIZEXT:4096 /WRITE:OFF /WIN /MINI
a:
call tools.BAT


:_end
a:
call menu.BAT
2 发表于 2006-04-04 08:26 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
把bak.bat前面的call去掉就可以了。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
3 发表于 2006-04-04 23:46 ·  中国 浙江 宁波 电信
中级用户
★★
积分 300
发帖 137
注册 2005-11-04 02:00
20年会员
UID 44559
性别 男
状态 离线
在call bak.bat下面加一行goto last,然后在此批处理末尾加一句:last就好了呀.
4 发表于 2006-04-04 23:50 ·  中国 河北 保定 移动
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
Originally posted by zjnbwdj at 2006-4-4 23:46:
在call bak.bat下面加一行goto last,然后在此批处理末尾加一句:last就好了呀.


也是个办法,但就没有我的答案简洁了~~~
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
论坛跳转: