我定义了一个函数,奇怪的是,即使我这样做,函数行也会执行不是调用函数!!
echo off
cls
REM call:ctrlService "stop" "1.1.1.1"
echo.SERVICES STARTED
:ctrlService - Generic function
echo.Parameter 1: %~1
echo.Parameter 2: %~2
dir
GOTO:EOF
echo on
我看到了echo
执行的语句,但没有显示相关参数的值。而且dir
命令也执行了!
我怎样才能阻止该函数自行执行?
答案1
添加标签只是添加了一个标签。它不会改变批处理文件的流程。
如果您想跳过批处理文件的一部分,那么您必须跳过它。
例如
@echo 关闭 echo 您的批处理文件已启动。跳转到主程序。 前往:主页 :函数标签 一些命令 一些命令 :主要的 一些命令
这将转到批处理文件的主要部分,跳过函数。
如果不执行此操作,将首先到达函数,执行该函数,然后流程将向下传递。