批处理文件的IF语句不起作用?

时间:2016-04-24 15:40:09

标签: batch-file cmd

我做了一个有趣的实验,经过一些快速阅读在线教程和SO问题。

这是我创建的批处理文件。

@ECHO OFF

:input
SET /P typeofc="To Connect input Y and to Disconnect input N (Y/N): "
IF /I "%typeofc%"=="Y" goto yes
IF /I "%typeofc%"=="N" goto no

:yes
rasdial whatevernetwork

:no
rasdial whatevernetwork /DISCONNECT

但是,当我执行此操作时,无论条件如何,它都会在yesno中运行这两个命令。尝试执行IF <condition> <command> ELSE <command>但是它只是在输入后退出,即使我在脚本末尾添加了PAUSE

我在这方面做错了什么?

P.S:我在32位Windows 7上执行此操作

1 个答案:

答案 0 :(得分:3)

尝试类似的东西:

@echo off
:input
cls
ECHO.
SET /P typeofc="To Connect input Y and to Disconnect input N (Y/N): "
IF /I "%typeofc%"=="Y" goto yes
IF /I "%typeofc%"=="N" goto no
ECHO "%typeofc%" is not valid. Please try again.
pause
GOTO input

:yes
echo rasdial whatevernetwork
rasdial whatevernetwork
pause
exit /b

:no
echo rasdial whatevernetwork /DISCONNECT
rasdial whatevernetwork /DISCONNECT
pause
exit /b