题 如何退出PostgreSQL命令行实用程序:psql


我可以使用什么命令或短键来退出PostgreSQL命令行实用程序 psql


1556
2018-02-27 10:17


起源


@a_horse_with_no_name:我对这个问题并不感到震惊,但是upvotes的数量:)比较例如至 如何使用单键按键退出Vi编辑器? - user272735
有时我们需要快速而直接的答案,而不是在手册中搜索它来关注真正的问题。在这种情况下,这些简短的问题确实很有帮助。 - App Work
真正的问题不是 “人们是否有能力阅读手册”但是 “企业软件是否应该响应标准退出序列” 喜欢,我不知道,“退出”?阅读手册退出似乎严重违反直觉。 - Kheldar
@Kheldar确实,这只是糟糕的用户界面设计(再加上傲慢)。人们对奇怪的东西不安全。 - Iain Collins
更重要的是,这篇文章现在是我google“退出psql”时的第一个热门帖子 - Angel S. Moreno


答案:


类型 \q 然后按 ENTER 退出 psql


2241
2018-02-27 10:21



如果您处于单用户后端模式,则无效(--single)。而是使用 卡雷尔的回答 (Ctrl-D)。除了总是在pgsql中工作之外,它还适用于大多数其他unix shell(python,mysql等)。如果你总是以“标准”的方式做事,那么你的大脑就会减少琐事的混乱。 - hobs
我实际输入了..但似乎在我的机器上它只在实际连接到数据库后才开始给我一些输出。 - mkorpela
输入\?如果只是“帮助”没有帮助,请寻求帮助。这是一个如何不创建人机交互的闪闪发光的例子。谁想到了这个伟大的想法?求助和\ q退出? - Jaywalker
Ctrl-d也有帮助 - YOung


我通常的关键序列是:

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

我认为psql命令行的老手通常会将其简化为:

\q

613
2018-04-17 00:31



我自己试过ctrl-z。它或多或少地完成了工作,但我并不完全满意。 :( - mjwach
cntrl + D从任何地方退出 - vidur punj
这应该是接受的答案:) - coolboyjules
@mjwach ctrl + z只是将进程暂停到后台,几乎肯定不是你想要的。 - LucidObscurity


按Ctrl+d 是我通常用来退出psql控制台的东西。


255
2017-08-24 09:26



这适用于几乎所有的提示,人们! - dbkaplun
是的。这也适用于bash,sh,ssh,zsh,irb,pry,python,sudo su,node等。它是 该 退出任何类型的shell的标准方法。 - Ajedi32
不只是一个壳。从stdin读取并将空字符串解释为EOF的任何合理的理智程序都将接受^ D. - Kevin
这对我不起作用,可能是因为我在OSX上使用了Dvorak键盘布局。 cmd-D和cmd-E(其中D在Qwerty上)都不起作用。 - NessBird
@NessBird Ctrl与Cmd不同。尝试Control-D而不是Command-D。 - Tilman Schmidt


对于Linux命令行 \ q + 输入。 

退出 按Ctrl + d 也是作品


12
2017-10-21 09:34





尝试:

  • 按Ctrl+ž  - 这发送了 TSTP 信号(TSTP 是“终点站”的缩写
  • 按Ctrl+\  - 这发送了 QUIT 信号

好奇心:

  • 按Ctrl+d  - 这发送了 EOF 字符。 EOF 代表“文件结束”。在这个具体的情况下,它从psql子程序退出,因为shell正在等待用户输入。这不应该是'走的路',因为它不起作用,如果:
    • 之前输入任何其他字符 - 尝试输入一些空格然后按 按Ctrl+d,它不会退出psql。
    • 如果根本不需要用户输入

12
2017-11-07 20:49



没有必要“尝试”任何东西。干净利落的正确命令 psql 是 有据可查 并且是 \q - a_horse_with_no_name
如 @hobs 明确说明 \q:“如果你处于单用户后端模式(--single),这将不起作用。而是使用Kaarel的答案(CtrlD)“。恕我直言 CtrlD 也不是要走的路,我解释了为什么在上面并提供了另一种选择。 - iusting
谢谢! Ctrl+Z 是唯一对我有用的命令 - 我通过隧道连接到数据库,丢失了连接 - 两者都没有 \q 也不 Ctrl+D 工作,但我可以 Ctrl+Z 然后杀死暂停的进程 - Sergey


基于 PostgreSQL 11 Beta 1发布!

用户体验增强功能

属于这一类的另一个特性是无法直观地退出PostgreSQL命令行(psql)。有许多记录在案的用户试图戒烟 放弃 和 出口 命令,只是为了了解这样做的命令 \ Q值。

我们听到了您的挫败感,现在已经添加了使用关键字退出命令行的功能 放弃 和 出口 并且希望退出PostgreSQL会话现在和使用PostgreSQL一样愉快。


4
2018-05-24 15:48



坏习惯,到处都是坏习惯 - easl
@randomware你能详细说明吗? - Lukasz Szozda
是的,我的意思是反斜杠是令人满意的,并与其他内部无分号的pgsql命令一致,并且可以做到 \? 要么 \h 继续学习'其他'imho - easl
“有很多记录投诉” - >“反斜杠令人满意”?嘿。 - Steve Bennett


我了解到我可以在批处理.sql文件中包含\ q,所以我可以在\ i操作之前让psql退出。


3
2018-06-23 00:13





对于Psql控制台窗口:
 
试试吧 Ctrl + C.

它将执行退出控制台模式的\ q。


0
2017-07-26 12:04