Sql server 如何在powershell脚本中将变量传递给bcp命令
我正在创建一个字符串,希望从PowerShell脚本中传递给bcp命令。下面是创建字符串的代码Sql server 如何在powershell脚本中将变量传递给bcp命令,sql-server,powershell,bcp,Sql Server,Powershell,Bcp,我正在创建一个字符串,希望从PowerShell脚本中传递给bcp命令。下面是创建字符串的代码 $fullFilePath = (pwd).path + "\$db.$table" + ".dat" $copyExecString = "bcp $db.$table out $fullFilePath -E -N -Slocalhost" 我可以将此操作的写入主机结果粘贴到命令提示符中,它运行正常,但无法按如下方式工作: $fullFilePath = (pwd).path + "\$db.$
$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命令之前,我也尝试过使用符号和字符,但没有效果
任何关于如何实现此功能的想法都将受到极大的欢迎,而不是一个字符串,通过将参数按空格分开来标记它:
& bcp $db.$table out $fullFilePath -E -N -Slocalhost
不要使用单个字符串,而是通过按空格拆分参数来标记它:
& bcp $db.$table out $fullFilePath -E -N -Slocalhost
您可以使用
Invoke Expression
cmdlet确保在执行之前解析要执行的内容:
Invoke-Expression "bcp $copyExecString"
您可以使用
Invoke Expression
cmdlet确保在执行之前解析要执行的内容:
Invoke-Expression "bcp $copyExecString"
这也行!非常感谢你。PowerShell脚本对我来说是非常新的,但使用几天后,我就知道它有多有用了ti@TechDawg270很高兴这有帮助。您需要小心
调用表达式
,因为它可能会执行您意想不到的操作。看看吧。如果可以的话,你想避免它。如果您发现此答案已回答您的问题,请将其标记为已接受答案。此选项也适用!非常感谢你。PowerShell脚本对我来说是非常新的,但使用几天后,我就知道它有多有用了ti@TechDawg270很高兴这有帮助。您需要小心调用表达式
,因为它可能会执行您意想不到的操作。看看吧。如果可以的话,你想避免它。如果您发现此答案已回答您的问题,请将其标记为已接受答案。