我使用 EOF 在 Linux 中向 'psql' 命令注入多行。
psql <<EOFSQL1SQL2
EOF学位
我想在Windows Powershell中做同样的事情,因为(是的,这对我来说很难)我们从Linux转移到Windows。我尝试了脚本块,使用 psql 作为块,命令作为参数。行不通。请让我知道如何在Windows powershell中模拟EOF。谷歌在这方面没有太多。
PowerShell 支持 here-strings,尽管它不支持任意分隔符。它也不支持通过命名命令第一和输入第二来标准输入重定向 - 您只能通过管道将输入发送到命令。这应该最接近您正在做的事情:
@"
sql1
sql2
"@ | psql
如果要禁止变量替换,请使用单引号而不是双引号。