在批处理脚本中,goto语句用于跳转到脚本内的某个标签label。标签由冒号:开始,后面跟着一个标识符,比如:myLabel.
goto语句允许空值脚本流程,是的脚本可以根据条件分支或循环执行特定代码段
标签Label
标签定义了脚本中的一个位置,语法如下
:myLabel
rem 测试goto语句
goto语句
goto语句用于跳转到标签定义的位置,语法如下:
goto myLabel
实例:
想使用goto语句创建循环,知道满足条件为止:
@echo off
setlocal enabledelayedexpansion
:loopStart
set /p input=请输入一个数字 (输入 'exit' 退出):
if "%input%=="exit" goto exitLoop"
echo 你输入的是:%input%
goto loopStart
:exitLoop
echo 循环结束
pause
endlocal
:loopStart是一个标签,定义了循环的起始点
goto loopStart用于跳回到:loopStart标签的位置
当用户输入exit时,goto exitLoop会跳转到:exitLoop标签的位置,从而结束循环
注意:
goto语句只能在同一叫脚本的文件内使用,不能跨文件跳转
如果标签名称包含空格或其他特殊字符,必须用双引号括起来,例如goto “my label”
使用goto语句注意避免无限循环,确保适当退出条件。
goto :eof用于跳转到文件末尾,相当于退出当前循环或过程