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

mag*_*tin 22 variables batch-file

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

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

如果我像"AB CD"我得到的那样引用我的参数

"AB CD".txt 
Illegal characters in path.
Run Code Online (Sandbox Code Playgroud)

Mal*_*ali 37

您可以使用%~1而不是%1

例如test.bat:

echo %~1
Run Code Online (Sandbox Code Playgroud)

然后调用test "abc de"将显示:

abc de
Run Code Online (Sandbox Code Playgroud)


Mur*_*bul 11

你能做的是

>batch.bat "ab cd.txt"
Run Code Online (Sandbox Code Playgroud)

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