2012-11-15 54 views
0

举个例子,我创建了一个名为concatenate.bat一个批处理文件:批处理文件串连命令行参数

@echo off 
set foo=%1\bar 
echo %foo% 

当我运行concatenate.bat "C:\somewhere\with spaces"

我想富输出: "C:\somewhere\with spaces\bar"

但是相反我得到: "C:\somewhere\with spaces"\bar


我也试过:set "foo=%1\bar"

,输出:"C:\somewhere\with spaces"\bar


什么是做到这一点的正确方法是什么?

回答

3
@echo off 
set foo="%~1\bar" 
echo %foo% 
+0

完美地工作,谢谢! – Anders

+0

没问题,很高兴我可以帮助:) –

+0

有人会解释这个答案中发生了什么吗? – DevJem