Scripting 如何包含一个";:&引用;作为powershell中的参数?

Scripting 如何包含一个";:&引用;作为powershell中的参数?,scripting,powershell-2.0,sqlcmd,Scripting,Powershell 2.0,Sqlcmd,我有一个简单的powershell脚本,如下所示 sqlcmd -S. -E -Q 'select ''$(x)''' -v x="c:a" 但我总是收到错误信息 Sqlcmd: ':a': Invalid argument. Enter '-?' for help. 我发现是参数中的:“导致了问题,但我不知道如何逃避它 谢谢, David反引号字符是PowerShell中的转义码。所以写下:`` 哎呀。。。这对冒号字符不起作用。请改用%3A。很抱歉,我不得不再次回答我自己的问题 解决此问题

我有一个简单的powershell脚本,如下所示

sqlcmd -S. -E -Q 'select ''$(x)''' -v x="c:a"
但我总是收到错误信息

Sqlcmd: ':a': Invalid argument. Enter '-?' for help.
我发现是参数中的
:“
导致了问题,但我不知道如何逃避它

谢谢, David

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


哎呀。。。这对冒号字符不起作用。请改用
%3A

很抱歉,我不得不再次回答我自己的问题

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


e、 g.$a=“abc”+”:123“

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

$xmlSection.SetAttribute(“xdtTransform”、“Insert”)


foreach对象{$\替换“xdtTransform”、“xdt:Transform”}

它会为我精确地显示“%3a”吗?不,我希望sql脚本为我显示“c:a”。我发现这不是sqlcmd问题,是powershell对“:”做了一些操作,但没有将其传递给sqlcmd。我在cmd.exe中执行了脚本,它运行良好。