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

вопрос создан в Tue, Oct 18, 2016 12:00 AM

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

    
1723
  1. @ a_horse_with_no_name: вопрос не в шоке, а в количестве голосов :) Сравните, например, Как выйти из редактора Vi одним нажатием клавиши?
    2012-07-25 16: 04: 22Z
  2. Иногда нам нужен быстрый и прямой ответ, а не поискать его в руководстве, чтобы сосредоточиться на реальной проблеме. В таких случаях эти короткие вопросы действительно полезны.
    2012-11-16 11: 35: 15Z
  3. Реальный вопрос не в том, "являются ли люди способными читать руководство" , а в ", если программное обеспечение предприятия отвечает на стандартные последовательности выхода как, я не знаю, «выход»? Необходимость прочитать руководство, чтобы бросить курить, кажется не совсем понятным.
    2014-02-20 14: 39: 53Z
  4. @ Kheldar Действительно, это просто плохой дизайн пользовательского интерфейса (в сочетании с высокомерием). Люди не уверены в странных вещах.
    2014-03-10 20: 46: 54Z
  5. что еще более важно, этот пост стал первым хитом, когда я Google "exit psql"
    2014-09-02 04: 42: 51Z
8 ответов                              8                         

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

ОБНОВЛЕНИЕ: 19 октября 2018 года

Начиная с PostgreSQL 11 , ключевые слова "quit" и "exit" в интерфейсе командной строки PostgreSQL были включены, чтобы упростить выход из инструмента командной строки.

    
2430
2018-10-19 12: 22: 03Z
  1. Это не будет работать, если вы находитесь в однопользовательском бэкэнд-режиме (--single). Вместо этого используйте ответ Каарела (Ctrl-D). В дополнение к постоянной работе в pgsql, он будет работать в большинстве других ваших оболочек Unix (python, mysql и т. Д.). Если вы всегда делаете вещи «стандартным» способом, nix, ваш мозг будет менее загроможден мелочами.
    2013-11-07 22: 10: 04Z
  2. Я на самом деле набрал это ... но, похоже, на моей машине он начал давать мне какой-то вывод только после фактического подключения к базе данных.
    2017-12-30 10: 48: 55Z
  3. Тип \? за помощь, если просто «помощь» не помогает. Это яркий пример того, как не создавать взаимодействие между человеком и компьютером. Кто думал об этой великой идее \? за помощь и \q выйти?
    2018-02-01 11: 37: 01Z
  4. 2018-10-19 08: 23: 22Z
  5. @ aorth Да, они объявили об этом несколько месяцев назад: stackoverflow.com /а /50513432/5070879
    2018-10-20 10: 11: 00Z

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

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

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

\q
    
707
2014-04-17 00: 31: 36Z
  1. Я сам попробовал ctrl-z. Он сделал свою работу более или менее, но я не был полностью удовлетворен. (
    2015-07-26 19: 03: 00Z
  2. cntrl + D для выхода из любого места
    2018-01-22 14: 41: 51Z
  3. @ mjwach ctrl + z просто приостанавливает процесс в фоновом режиме, почти наверняка не то, что вы хотите.
    2018-07-06 05: 31: 26Z
  4. postgres = # /q postgres- # \q
    2018-12-21 11: 37: 28Z
  5. поэтому я попытался /q:)
    2019-04-29 12: 40: 18Z

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

    
281
2015-03-23 ​​06: 01: 49Z
  1. Это работает почти на все запросы, люди!
    2013-06-28 17: 27: 45Z
  2. Да. Это также работает в bash, sh, ssh, zsh, irb, pry, python, sudo su, node и других. Это стандартный способ выхода из оболочки любого вида.
    2015-07-10 19: 46: 05Z
  3. Не просто оболочка. Любая достаточно разумная программа, которая читает из stdin и интерпретирует пустую строку как EOF, примет ^ D.
    2015-08-20 20: 37: 45Z
  4. Это не работает для меня, возможно, потому что я использую раскладку клавиатуры Dvorak в OSX. Ни cmd-D, ни cmd-E (где D находится на Qwerty) не работают.
    2017-08-07 15: 43: 38Z
  5. @ NessBird Ctrl - это не то же самое, что Cmd. Попробуйте Control-D вместо Command-D.
    2017-10-31 14: 06: 09Z

Try:

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

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

  • Ctrl + D - отправляет символ EOF. EOF означает «конец файла». В этом конкретном случае он выходит из подпрограммы psql, так как оболочка ожидает ввода данных пользователем. Это не должен быть «путь», так как он не работает, если:
    • любой другой символ вводится раньше - попробуйте ввести несколько пробелов, а затем нажмите Ctrl + D , он не выйдет из psql.
    • если пользовательский ввод вообще не требуется
17
2016-11-15 18: 18: 57Z
  1. Нет необходимости «пробовать» что-либо. Правильная команда для чистого выхода из psql - это хорошо задокументированная и \q
    2016-11-07 20: 52: 41Z
  2. Поскольку @hobs четко заявляет о \q: "Это не будет работать, если вынаходятся в однопользовательском режиме бэкэнда (--single). Вместо этого используйте ответ Каарела (CtrlD) ". ИМХО с использованием CtrlD тоже не лучший способ, и я объяснил, почему выше, и предложил альтернативу.
    2016-11-08 07: 29: 36Z
  3. Спасибо! Ctrl+Z была единственной командой, которая работала для меня - я был подключен к базе данных через туннель, который потерял соединение - ни \q, ни Ctrl+D не работали, но я мог Ctrl+Z и затем убить приостановленный процесс
    2018-04-05 23: 02: 58Z

quit или exit или \q

На основе Выпущена бета-версия PostgreSQL 11! :

  

Улучшения взаимодействия с пользователем

     

Еще одной особенностью, попавшей в эту категорию, была невозможность интуитивно выйти из командной строки PostgreSQL (psql). Было зарегистрировано множество жалоб пользователей, пытающихся выйти с помощью команд quit и exit , только для того, чтобы узнать, что это была команда \q. сильный>

     

Мы слышали ваше разочарование и теперь добавили возможность выхода из командной строки, используя ключевые слова quit и exit , и надеемся, что выход из сеанса PostgreSQL теперь Приятно использовать PostgreSQL.

    
11
2019-04-26 07: 52: 20Z
  1. вредные привычки, вредные привычки везде
    2018-05-29 17: 47: 04Z
  2. @ randomware Не могли бы вы уточнить?
    2018-05-29 18: 00: 51Z
  3. да, я имею в виду, что обратный слеш был удовлетворительным и соответствовал другим внутренним командам pgsql без точки с запятой, и можно было бы сделать \? или \h, чтобы продолжить изучение «всего остального» imho
    2018-05-29 19: 27: 23Z
  4. "Было зарегистрировано множество жалоб" - > "обратный слеш был удовлетворительным"? Хех.
    2018-06-20 03: 16: 56Z

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

Выход с помощью Ctrl + D также работает

    
10
2015-10-21 09: 34: 46Z
  1. Это просто повторяет ответы Frankline и Kaarel .
    2018-11-27 16: 01: 04Z

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

    
4
2014-06-23 00: 13: 08Z

Это POSTGRESQL - работает на CentOS7, пожалуйста, обратите внимание, что я вышел из PSQL с \q, тогда я все еще в командной оболочке bash для PostgreSQL, который я снова выйду из системы - выход из системы .... вывод терминала ниже --- - -bash-4.2$ quit -bash: quit: command not found -bash-4.2$ exit logout There are stopped jobs. -bash-4.2$ logout

    
0
2019-06-17 17: 39: 58Z
источник размещен Вот