我正在使用一个命令行实用程序,它将一组输入参数作为命令.然后根据预定义的名称验证这些输入参数.以这种方式调用该实用程序:
runUtility.cmd -A -B x,y,z -C w
这里的参数是A,B和C(以 - 开头).现在验证规则如下:
参数的名称应与预定义的名称匹配,因此无法传递任何无效参数,例如-UVW
参数可能有也可能没有值.在上面的例子中,-A没有值,而-B有x,y,z和-C有w.
我编写了这段代码来验证输入:
:validate
set argument=%1
set argumentValue=%2
if "%argument%" == "-A" (
shift
goto validate
)
if "%argument%" == "-B" (
if "%argumentValue%" == "" (
echo Empty value for -B
goto end
)
shift
shift
goto validate
)
if "%argument%" == "-C" (
if "%argumentValue%" == "" (
echo Empty value for -C
goto end
)
shift
shift
goto validate
)
if %argument%" == "" (
goto end …Run Code Online (Sandbox Code Playgroud)