sample.bat a,b,c,d yes
我试图通过回显%2来输出yes,但结果显示为b。我认为逗号也被视为转义字符或其他东西。如何输出yes作为第二个参数?
答案 0 :(得分:2)
参数分隔符为:,
;
=
<space>
<tab>
<0xFF>
无法修改参数分隔符,也无法对其进行转义。
在参数中包含分隔符的唯一方法是将参数括在引号中。
sample.bat "a,b,c,d" yes
您可以使用~
修饰符
echo %~1
答案 1 :(得分:2)
您可以使用%*
代替并使用自己的规则进行解析。
for /F "tokens=1,2 delims= " %%A in ("%*") DO (
echo first=%%A
echo second=%%B
)