我正在创建一个字符串,我想从PowerShell脚本中传递给bcp命令。这是创建字符串
的代码$fullFilePath = (pwd).path + "\$db.$table" + ".dat"
$copyExecString = "bcp $db.$table out $fullFilePath -E -N -Slocalhost"
我可以将写入主机的结果粘贴到命令提示符中,它运行得很好,但它不会按如下方式工作:
$fullFilePath = (pwd).path + "\$db.$table" + ".dat"
$copyExecString = "$db.$table out $fullFilePath -E -N -Slocalhost"
bcp $copyExecString
我也尝试在调用bcp命令之前使用&符号,但无济于事
非常感谢有关如何实现此功能的任何想法
答案 0 :(得分:2)
而不是单个字符串,通过用空格分隔参数来标记它:
& bcp $db.$table out $fullFilePath -E -N -Slocalhost
答案 1 :(得分:1)
您可以使用Invoke-Expression
cmdlet来确保在执行之前解析要执行的内容:
Invoke-Expression "bcp $copyExecString"