我正在尝试从命令行调用 MSBuild。当我使用没有空格的路径时,一切工作正常,但现在我有一个有空格的路径,并且命令失败。
命令(有效):
"C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe"
/t:Rebuild "C:\Projects\myProject.csproj"
/p:OutDir=c:\temp\deploy\funAndGames\Deployment\bin\
/p:WebProjectOutputDir=c:\temp\deploy\funAndGames\Deployment\
/p:Configuration=Release
然后我添加了引号并将 OutDir 更改为 OutPath (不起作用):
"C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe"
/t:Rebuild "C:\Projects\myProject.csproj"
/p:OutPath="c:\temp\deploy\funAndGames\Deployment\bin\"
/p:WebProjectOutputDir="c:\temp\deploy\funAndGames\Deployment\"
/p:Configuration=Release
我的目标是这样的(不起作用):
"C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe"
/t:Rebuild "C:\Projects\myProject.csproj"
/p:OutPath="c:\temp\deploy\fun and games\Deployment\bin\"
/p:WebProjectOutputDir="c:\temp\deploy\fun and games\Deployment\"
/p:Configuration=Release
有关 OutDir/OutPath 和 WebProjectOutputDir(带空格)的语法有任何帮助吗?是否可以?如果不是,有人知道原因是什么(由于某些网址没有空格类型吗?)
刚刚找到了这个老问题的答案。
要处理空格,您应该在所有文件夹上使用转义字符 \。基本上
/p:OutPath="c:\temp\deploy\fun and games\Deployment\bin\"
应该
/p:OutPath="c:\\temp\\deploy\\fun and games\\Deployment\\bin\\"
它神奇地起作用了!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)