Я хочу установить пароль для пользователя сервера Postgresql по умолчанию postgres
. Я сделал это с помощью:
sudo -u postgres psql
# \password postgres
Я хочу сделать этот шаг на многих машинах, поэтому я хотел бы создать bash
скрипт для того же. Как это сделать в bash?
man
команду. Пожалуйста, обязательно попробуйтеman psql
в будущем.Ответы:
Как документировано, вы можете запускать мета-команды через
--command
опцию.Одинарные кавычки гарантируют, что оболочка не обрабатывает обратную косую черту как escape-символ.
источник
sudo -u postgres psql --command "\password"
. Интересно, почему мой вопрос был отклонен."\\..."
.The backslash retains its special meaning only when followed by one of the following characters: ‘$’, ‘`’, ‘"’, ‘\’, or newline.
Я думаю, именно поэтому"\password"
работал нормально.Вместо использования команды psql
\password
, которая ожидает интерактивный терминал, вы можете использовать:Скажем, с помощью
psql -c
команды:источник