如何将复杂链作为参数传递给批处理'index1','index2','index3'

时间:2010-11-15 15:51:14

标签: string parameters batch-file arguments

我想将此字符串'index1','index2','index3'传递给批处理

test2.cmd 1 'index1','index2','index3' 3

如果test2.cmd是

echo %1
echo %2
echo %3

我想看看

echo 1
echo 'index1','index2','index3'
echo 3

但它不起作用......因为我看到了

echo 1
echo'index1'
echo 'index2'

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

将字符串括在双引号中:

test2.cmd 1 "'index1','index2','index3'" 3

编辑以回答您的评论:

同时将test2.cmd更改为

echo %1
echo %~2
echo %3

答案 1 :(得分:0)

问题在于“,”是参数的分隔符,所以你必须替换它,或引用像Vicky建议的完整参数。

如果index1,index2,..可以包含引号,则会遇到更多问题,那么参数将被破坏。