Как выйти из утилиты командной строки PostgreSQL: psql

1357

Какую команду или короткий ключ можно использовать для выхода из утилиты командной строки PostgreSQL psql?

  • 4
    @a_horse_with_no_name: я не в шоке от вопроса, а от количества голосов :) Сравните, например, с тем, Как выйти из редактора Vi одним нажатием клавиши?
  • 168
    Иногда нам нужен быстрый и прямой ответ, а не поискать его в руководстве, чтобы сосредоточиться на реальной проблеме. В таких случаях эти короткие вопросы действительно полезны.
Показать ещё 8 комментариев
Теги:
postgresql-9.1
psql

6 ответов

1934
Лучший ответ

Введите \q, а затем нажмите ENTER, чтобы выйти psql.

  • 23
    Это не будет работать, если вы находитесь в однопользовательском бэкэнд-режиме ( --single ). Вместо этого используйте ответ Каарела ( Ctrl-D ). В дополнение к постоянной работе в pgsql, он будет работать в большинстве других ваших оболочек Unix (python, mysql и т. Д.). Если вы всегда делаете вещи «стандартным» образом, ваш мозг будет менее загроможден мелочами.
  • 0
    Я на самом деле набрал это .. но похоже, что на моей машине он начал давать мне вывод только после фактического подключения к базе данных.
Показать ещё 4 комментария
512

Моя обычная последовательность клавиш:

quit()
quit
exit()
exit
q
q()
!q
^C
help
Alt + Tab
google.com
Quit PSQL
\q

Я думаю, что ветераны командной строки psql обычно сокращают это, просто:

\q
  • 2
    Я попробовал Ctrl-Z, сам. Он сделал свою работу более или менее, но я не был полностью удовлетворен. :(
  • 7
    Ctrl + D, чтобы выйти из любого места
Показать ещё 2 комментария
219

Ctrl + D - это то, что я обычно использую для выхода из консоли psql.

  • 53
    Это работает практически на все запросы, люди!
  • 2
    Ага. Это также работает в bash, sh, ssh, zsh, irb, pry, python, sudo su, node и других. Это стандартный способ выхода из оболочки любого рода.
Показать ещё 3 комментария
10

Для командной строки Linux \q + введите

Завершение работы с Ctrl + D также работает

6

Try:

  • Ctrl + Z - это посылает сигнал TSTP (TSTP является коротким для "остановки терминала" )
  • Ctrl + \ - отправляет сигнал QUIT

Для любопытства:

  • Ctrl + D - это отправляет символ EOF. EOF означает "конец файла". В этом конкретном случае он выходит из подпрограммы psql, так как оболочка ждет ввода пользователя. Это не должно быть "способом идти", поскольку оно не работает, если:
    • любой другой символ вводится раньше - попробуйте ввести некоторые пробелы, а затем нажмите Ctrl + D, он не выйдет из psql.
    • если пользовательский ввод вообще не требуется
  • 4
    Не нужно ничего «пробовать». Правильная команда для чистого выхода из psql хорошо документирована и является \q
  • 2
    Как @hobs ясно говорит о \q : «Это не будет работать, если вы находитесь в однопользовательском бэкэнд-режиме (--single). Вместо этого используйте ответ Каарела ( CtrlD )». ИМХО использование CtrlD не подходит, и я объяснил почему выше и предложил альтернативу.
Показать ещё 1 комментарий
3

Я узнал, что могу включить \q в пакетный .sql файл, поэтому я мог бы уйти psql раньше из операции\i.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню