为什么有时的IF我总是用不好

来源:百度知道 编辑:UC知道 时间:2024/05/16 00:39:37
@ECHO OFF
set p=d
set f=s
set /p a=普通(S)、连机(D)。
if "%a%" equ "%p%" goto abc
if "%a%" equ "%f%" goto agd
:abc
start d:\我的文档\桌面\看啊\nfba.exe
:agd
start d:\我的文档\桌面\WinKawaks.lnk
EXIT
新手上路,不知道为什么有时用出来的命令就是达不到自己想要的结果.
比如这个吧!我本来想让它输入s运行一个程序,而输入d则运行另一个程序.可是我输入s运行它就可以运行WINKAWAKS.LNK,但是输入d则两个程序都运行!这是为什么啊!请高手们给菜菜我解释下!!不胜感激!

是的,因为输入D程序跳到了:abc处,执行完nfba.exe后当然还得往下执行,所以接着又执行了下一个程序,你应该改成这样吧,我估计的,我没试
@ECHO OFF
set p=d
set f=s
set /p a=普通(S)、连机(D)。
if "%a%" equ "%p%" goto abc
if "%a%" equ "%f%" goto agd
:abc
start d:\我的文档\桌面\看啊\nfba.exe
EXIT
:agd
start d:\我的文档\桌面\WinKawaks.lnk
EXIT