我们遇到了PowerShell和SQLCMD,当有在-v参数变量的PowerShell不会运行命令sapces问题。
如
sqlcmd ... -v VAR="Some space"
有没有人经历过这样或知道如何解决这个问题呢?
谢谢,
乙
我们遇到了PowerShell和SQLCMD,当有在-v参数变量的PowerShell不会运行命令sapces问题。
如
sqlcmd ... -v VAR="Some space"
有没有人经历过这样或知道如何解决这个问题呢?
谢谢,
乙
上面的语法同样适用于在PS命令行,但在脚本中失败。
我们挣扎了很久着如何使这项工作。 我们的一个非常聪明的QA家伙终于想出了以下内容:
$variableWithSpaces="one two three"
$mySqlCmd = "sqlcmd -E -S $dbServer -i $script -v var=```"$variableWithSpaces```" "
Invoke-Expression $mySqlCmd
插入丑陋,但它的工作原理。
PowerShell的将实际参数传递给程序为"VAR=Some space"
。 也许SQLCMD绊了这一点。 通过使用
VAR=`"Some space`"
相反,它会获得通过的VAR="Some space"
。 也许能解决问题。