Для домашней работы у меня есть несколько шагов, которые мне нужно пройти каждый раз, когда я хочу подключиться к базе данных, и это становится действительно раздражающим и напрасным занятием.
Я уже автоматизировалЧасть этого.Однако моя последняя попытка автоматизировать несколько последних команд не увенчалась успехом.
Изначально я настроил ярлык для терминала PuTTy
:
- Создать новыйЯрлык
- Выберите
"C:\Program Files\PuTTY"
в качестве точки входа (Start in
) - Введите
"C:\Program Files\PuTTY\putty.exe" <MY_USERNAME>@arcade.iro.umontreal.ca -pw <MY_PASSWORD>
в качестве Target
Затем после двойного щелчка по этойярлык, я ввел эти две строки (чтобы создать и затем выполнить сценарий bash):
echo "psql -h postgres && \c ift2935 && set search_path to inscriptions_devoir;" > sql.sh
. sql.sh
В конце концов, моей целью было бы просто иметь возможность написать . sql.sh
после открытия ярлыка, чтобы все было установленои готов к работе (а на самом деле, может быть, даже , что можно каким-то образом автоматизировать с помощью ярлыка?).Тем не менее, как есть, мой сценарий оболочки запускает только команду psql -h postgres
, которая успешно запускает PostGreSQL
.
Мой вопрос:
Какполучить две другие команды (\c ift2935
и set search_path to inscriptions_devoir;
) для автоматического запуска внутри PostGreSQL?
РЕДАКТИРОВАТЬ:
Забыл упомянуть: после первой командыиз моего сценария, я могу набрать \q
, чтобы оставить PostGreSQL
, а затем терминал выводит это:
-bash: c: command not found
Что, я думаю, указывает, что терминал прерывает свой текущий процесс для фактического запуска PostGreSQL
и при выходе возобновляет выполнение сценария, переходя ко второй команде, которая завершается неудачей, поскольку \c
ничего не значит как команда оболочки.