[英]How to get the rest of arguments in windows batch file?
我知道我可以用%0得到第一個參數,用%1得到第二個,依此類推。我也可以用%*獲得所有參數。
我可以從第二個參數得到所有參數嗎? 例如,如果我跑
foo.bat bar1 bar2 bar3 bar4
我怎么才能得到bar2 bar3 bar4
?
@ECHO OFF
SETLOCAL
SET allargs=%*
IF NOT DEFINED allargs echo no args provided&GOTO :EOF
SET arg1=%1
CALL SET someargs=%%allargs:*%1=%%
ECHO allargs %allargs%
ECHO arg1 %arg1%
ECHO someargs %someargs%
這將使SOMEARGS
至少有一個前導分隔符(如果已設置)
使用SHIFT
命令。 但是每次換班都會失去第一名。 這不會改變%*
但你將能夠獲得所有參數,但第一個:
@echo off
shift
set "arg_line= "
:parse_args
if "%~1" NEQ "" (
arg_line=%argline% "%~1"
goto :parse_args
)
現在你將擁有所有參數,但第一個存儲在%arg_line%
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.