嗨我在变量中设置一个字符串
set main=svn commit -m "构建版本号更新" install\msbuild\VersionNumber.txt
并将 "%main%" 作为命令行参数传递给另一个脚本 template.bat 。
但在 template.bat 中,“构建版本号更新”被视为第二个参数,其余为第三个
一。
请告诉我如何将变量 main 作为单个参数传递。
谢谢
嗨我在变量中设置一个字符串
set main=svn commit -m "构建版本号更新" install\msbuild\VersionNumber.txt
并将 "%main%" 作为命令行参数传递给另一个脚本 template.bat 。
但在 template.bat 中,“构建版本号更新”被视为第二个参数,其余为第三个
一。
请告诉我如何将变量 main 作为单个参数传递。
谢谢
在第二个bat文件中;
@echo whole command line is %*
变量 %main% 包含空格,所以如果你像这样使用它:
template.bat %main%
Batch 会这样解释它:
template.bat svn blah blah blah
所以 %1 将只是“svn”等。如果您希望将 %main% 的全部内容视为单个参数,则必须在其周围加上引号:
template.bat "%main%"
问题是, %1 现在包含这些引号。您必须使用波浪号在 template.bat 中删除它们:
%~1