Блок кода Powershell PSQL с использованием EOF

У меня есть многострочная инъекция в команду "psql" в Linux с использованием EOF.

psql<< EOF sql1 sql2

EOF

Я хочу сделать то же самое в Windows PowerShell, потому что (да, это трудно для меня), мы перешли с Linux на Windows. Я попробовал scriptblock, используя psql в качестве блока и команды в качестве аргументов. Не будет работать Пожалуйста, дайте мне знать, как имитировать EOF в Windows PowerShell. У Google не так много на этом.

1 ответ

Решение

PowerShell поддерживает здесь-строки, хотя он не поддерживает произвольные разделители. Он также не поддерживает стандартное перенаправление ввода, называя сначала команду, а затем секунду - вы можете только направить ввод в команду. Это должно быть ближе всего к тому, что вы делаете:

@"
sql1
sql2
"@ | psql

Используйте одиночные кавычки, а не двойные, если вы хотите подавить подстановку переменных.

Другие вопросы по тегам