相关疑难解决方法(0)

Powershell使用嵌套引号调用msbuild

使用Powershell和Psake为可视化工作室解决方案创建包和部署.尝试使用msbuild部署数据库项目 - 使用msdos visual studio命令行正常工作

   msbuild /target:Deploy /p:UseSandboxSettings=false /p:TargetConnectionString="aConnectionWithSpacesAndSemiColons" "aDatabaseProjectPathWithSpaces"
Run Code Online (Sandbox Code Playgroud)

从powershell调用时,相同的方法调用会导致错误

& msbuild /target:Deploy /p:UseSandboxSettings=false /p:TargetConnectionString="aConnectionWithSpacesAndSemiColons" "aDatabaseProjectPathWithSpaces"
Run Code Online (Sandbox Code Playgroud)

与空间有关 - 无法弄清楚如何在powershell中复制此调用 - 示例数据库连接字符串数据源=.\ SQL2008;初始目录= DocumentExecution; Integrated Security = True;

msbuild powershell psake

25
推荐指数
3
解决办法
1万
查看次数

Powershell命令处理(传入变量)

我正在创建一个Powershell脚本来部署一些代码,部分过程是调用一个名为RAR.EXE的命令行压缩工具来备份一些文件夹.

我正在尝试动态构建参数,然后让PowerShell用变量调用命令但是我遇到了麻烦.它不起作用......

运行以下脚本,你应该看到我在说什么.作为变量传入的参数正在被破坏.如果我传递整个命令+参数,我得到臭名昭着的"不被识别为cmdlet ..."的消息.

谢谢你的帮助!

echo "this should succeed"
& cmd /c echo foo

echo "why does this echo out an additional double quote?"
$param = "/c echo foo"
& cmd "$param"

echo "this does the same"
$param = "/c echo foo"
& cmd $param

echo "escaping the slash doesn't work either..."
$param = "`/c echo foo"
& cmd $param

echo "this fails, but why?"
$cmd = "cmd /c echo foo"
&$cmd
Run Code Online (Sandbox Code Playgroud)

parameters powershell command-line command arguments

7
推荐指数
3
解决办法
3万
查看次数