Risposte:
Come documentato , puoi eseguire meta-comandi tramite l' --command
opzione.
sudo -u postgres psql --command '\password postgres'
Le virgolette singole assicurano che la shell non tratti la barra rovesciata come un carattere di escape.
sudo -u postgres psql --command "\password"
. Mi chiedo, perché la mia domanda è stata sottoposta a downgrade.
"\\..."
.
The backslash retains its special meaning only when followed by one of the following characters: ‘$’, ‘`’, ‘"’, ‘\’, or newline.
penso che sia per questo che ha "\password"
funzionato bene.
Invece di utilizzare il \password
comando psql , che prevede un terminale interattivo, è possibile utilizzare:
ALTER USER postgres WITH PASSWORD 'newpassword';
Dì, tramite un psql -c
comando:
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'newpassword';"
man
comando. Assicurati di provareman psql
in futuro.