繁体   English   中英

如何串联批处理文件的命令行参数?

[英]How to concatenate command line args for a batch file?

我目前正在尝试将命令行参数与此连接起来:

for %%a in (%*) do set "subject=%subject% %%a"

例如,如果我跑步

my.bat subject line here

它应该将我的主题变量设置为“此处为主题行”,以保留空格。 但是,当前运行之后,我的主题变量设置为最后一个单词。 我得到的主题值为“这里”。

如何串联命令行参数正确?

你不能只是做:

SET subject=%*

或者,启用延迟扩展,以便在解析期间不会替换环境变量。

Setlocal EnableDelayedExpansion
for %%a in (%*) do set subject=!subject! %%a
echo %subject%

请参见%variable%和!variable之间的差异! 在批处理文件中以获取更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM