How can I set value of environment variable and execute command in one line in PowerShell?
I have this:
PGPASSWORD=db_pass psql -U db_user -d db_name -a -h localhost -f some.sql
and it's working great in Linux.
How can I translate above to PowerShell command which will work on Windows Server 2012 - Windows 10?
I tried:
SET "PGPASSWORD=db_pass" & "C:\Program Files (x86)\PostgreSQL\9.4\bin\psql.exe" -U postgres -a -d db_name -h localhost -f some.sql
and I get error: "The & is reserved for future use..." - Windows 2012.
Try this:
$env:PGPASSWORD='db_pass'; & "C:\Program Files (x86)\PostgreSQL\9.4\bin\psql.exe" -U postgres -a -d db_name -h localhost -f some.sql
In reality this is two commands separated by a semi-colon so they can be run as a single line.
Note also that from PowerShell you set environment variables via $env:<name of var>
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With