如何在批处理文件中传递带空格的命令行参数

时间:2013-09-05 14:57:40

标签: variables batch-file

我需要从命令行将参数行AB CD传递给批处理文件。此参数引用文件名。

如果我使用AB CD,脚本只需选择第一部分并返回Unable to find the file AB.txt

如果我在"AB CD" "AB CD".txt Illegal characters in path. 之类的参数中加上引号

{{1}}

3 个答案:

答案 0 :(得分:36)

您可以使用%~1代替%1

例如test.bat with:

echo %~1

然后会显示对test "abc de"的调用:

abc de

答案 1 :(得分:11)

你可以做的是

>batch.bat "ab cd.txt"

当参数包含空格时,可以将它们用引号括起来。

答案 2 :(得分:0)

如果它只接受 1 个参数使用 "%*" 你不需要引用参数

myapp.cmd

@echo off
echo "%*"

测试一下

myapp single parameter with space