如何制作带有三个可选参数的批处理脚本,但是你可以传递第一个和第三个参数? e.g。
@echo off
set FIRST_PARAM=%1
set SECOND_PARAM=%2
set THIRD_PARAM=%3
echo "%FIRST_PARAM%"
echo "%SECOND_PARAM%"
echo "%THIRD_PARAM%"
如果我把script_name.bat放到b c它会给我
“一”
“B”
“C”
但如果我只想传递a和c并获得
,该怎么办?“一”
“”
“C”
这可能吗?
答案 0 :(得分:2)
传递给脚本"a" "" "c"
,""
将是第二个参数。
要取消引用参数,您可以使用%~1
:
@echo off
set "FIRST_PARAM=%~1"
set "SECOND_PARAM=%~2"
set "THIRD_PARAM=%~3"
echo "%FIRST_PARAM%"
echo "%SECOND_PARAM%"
echo "%THIRD_PARAM%"
或(重新引用并再次引用)。IF
是可选的,并检查空参数。
@echo off
if "%~1" NEQ "" set "FIRST_PARAM="%~1""
if "%~2" NEQ "" set "SECOND_PARAM="%~2""
if "%~3" NEQ "" set "THIRD_PARAM="%~3""
echo "%FIRST_PARAM%"
echo "%SECOND_PARAM%"
echo "%THIRD_PARAM%"