2016-06-03 4 views
-1

Ich habe Multiline-Injektion in 'Psql' Befehl in Linux mit EOF.Powershell psql Block des Codes mit EOF

psql < < EOF sql1 sql2

EOF

Ich möchte das gleiche in Windows Powershell tun, weil (ja es mir schwer) wir von Linux nach Windows verschoben. Ich habe versucht, Skriptblock, mit psql als Block und Befehle als Argumente. Würde nicht funktionieren. Bitte lassen Sie mich wissen, wie man den EOF in Windows Powershell simuliert. Google hat dazu nicht viel.

Antwort

0

PowerShell unterstützt here-strings, unterstützt jedoch keine willkürlichen Trennzeichen. Es unterstützt auch keine Standardeingabeumleitung, indem der Befehl zuerst und die Eingabe als zweites angegeben wird. Sie können nur eine Eingabe an den Befehl übergeben. Dies sollte am nächsten kommen, was Sie tun:

@" 
sql1 
sql2 
"@ | psql 

Benutzen Sie nicht doppelte Anführungszeichen, wenn Sie die Variablensubstitution zu unterdrücken wollen.