如何在powershell中包含“:”作为参数?

时间:2010-06-28 06:07:05

标签: scripting powershell-v2.0 sqlcmd

我有一个简单的PowerShell脚本,比如这个

sqlcmd -S. -E -Q 'select ''$(x)''' -v x="c:a"

但我总是收到错误消息

Sqlcmd: ':a': Invalid argument. Enter '-?' for help.

我发现参数中的":"引起了问题,但我不知道如何逃避它。

感谢, 大卫

3 个答案:

答案 0 :(得分:3)

抱歉,我必须再次回答我自己的问题。

解决这个问题的唯一方法是使用'+'连接两个字符串,并保留':'。

e.g。 $ a = “ABC” + “:123”

答案 1 :(得分:0)

您也可以尝试使用我们用于编写xdt脚本的方法:Transforms。

$xmlSection.SetAttribute("xdtTransform","Insert")

接着是

foreach-object {$_ -replace "xdtTransform" , "xdt:Transform"}

答案 2 :(得分:-1)

反引号字符是PowerShell中的转义码。所以写上``:`....

oops ...这对冒号角色不起作用。请改用%3A