我试图在包含空格的值的installshield安装程序中设置公共属性。在运行MSI安装程序时,我在PowerShell命令提示符下使用以下命令。由于值包含空格所以就用双引号来传递值msiexec的命令行参数在PowerShell中如果包含空格,会中断
msiexec -i "myinstaller.msi" MYDIRPATH="C:\new folder\data.txt"
它突破命令作为参数值C:\new folder\data.txt
具有串new folder
中和的空间中MSIEXEC的下面的错误提示的结果,其是暗示的事实参数传递给msiexec命令是有问题的:
如果我在Windows默认命令外壳运行非常相同的命令提示符,然后它的工作原理就像一个魅力。
,我试过的选项:
- 代替双引号
- 在参数按this答案使用反勾号(')字符空格前的使用单引号。
太可怕了!不是在我的梦中,我可以想象得到。非常感谢帮助。我有更多的细节[这里](https://serverfault.com/questions/47811/what-is-the-literal-escape-character-in-powershell)供参考。 – RBT