Câu hỏi Cách thoát khỏi tiện ích dòng lệnh PostgreSQL: psql


Tôi có thể sử dụng lệnh nào hoặc khóa ngắn để thoát khỏi tiện ích dòng lệnh PostgreSQL psql?


1556
2018-02-27 10:17


gốc


@a_horse_with_no_name: Tôi không bị sốc bởi câu hỏi, nhưng số lượng upvotes :) So sánh ví dụ: đến Làm cách nào để thoát trình chỉnh sửa Vi bằng một lần nhấn phím? - user272735
Đôi khi chúng ta cần câu trả lời nhanh chóng và thẳng về phía trước hơn là tìm kiếm trong sách hướng dẫn để tập trung vào vấn đề thực sự. Trong những trường hợp như vậy, những câu hỏi ngắn này thực sự hữu ích. - App Work
Câu hỏi thực sự không phải là "là những người có khả năng đọc sách hướng dẫn", nhưng "phần mềm doanh nghiệp có nên đáp ứng các chuỗi thoát tiêu chuẩn" không như, tôi không biết, "thoát"? Phải đọc hướng dẫn để bỏ thuốc lá dường như nghiêm túc phản trực giác. - Kheldar
@ Kheldar Thật vậy, nó chỉ là thiết kế giao diện người dùng xấu (cùng với kiêu ngạo). Mọi người không an toàn về những điều kỳ lạ. - Iain Collins
quan trọng hơn, bài đăng này hiện là lần truy cập đầu tiên khi tôi google "thoát khỏi psql" - Angel S. Moreno


Các câu trả lời:


Kiểu \q và sau đó nhấn ENTER bỏ thuốc lá psql.


2241
2018-02-27 10:21



Điều này sẽ không hoạt động nếu bạn đang ở chế độ phụ trợ người dùng đơn lẻ (--single). Thay vào đó sử dụng Câu trả lời của Kaarel (Ctrl-D). Ngoài việc luôn làm việc trong pgsql nó sẽ làm việc trong hầu hết các shell unix khác của bạn (python, mysql, v.v.). Nếu bạn luôn luôn làm những điều "tiêu chuẩn" cách trong 'nix bộ não của bạn sẽ ít lộn xộn với đố. - hobs
Tôi thực sự gõ rằng .. nhưng có vẻ như trên máy tính của tôi nó bắt đầu cho tôi một số đầu ra chỉ sau khi thực sự kết nối với một cơ sở dữ liệu. - mkorpela
Kiểu \? để được giúp đỡ nếu chỉ "giúp" không giúp được gì. Đây là một ví dụ lấp lánh về cách không tạo ra tương tác máy tính của con người. Ai nghĩ về ý tưởng tuyệt vời này của \? để được giúp đỡ và \ q bỏ thuốc lá? - Jaywalker
Ctrl-d cũng trợ giúp - YOung


Chuỗi khóa thông thường của tôi là:

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

Tôi nghĩ rằng các cựu chiến binh của dòng lệnh psql thường rút ngắn chỉ để:

\q

613
2018-04-17 00:31



Tôi đã thử ctrl-z, bản thân mình. Nó đã hoàn thành công việc, nhiều hay ít, nhưng tôi không hoàn toàn hài lòng. :( - mjwach
cntrl + D để thoát khỏi bất kỳ nơi nào - vidur punj
Đây phải là câu trả lời được chấp nhận :) - coolboyjules
@mjwach ctrl + z chỉ đình chỉ quá trình nền, gần như chắc chắn không phải những gì bạn muốn. - LucidObscurity


Ctrl+D là những gì tôi thường sử dụng để thoát khỏi giao diện điều khiển psql.


255
2017-08-24 09:26



Điều này hoạt động trên hầu như tất cả các lời nhắc nhở, mọi người! - dbkaplun
Vâng. Điều này cũng hoạt động trong bash, sh, ssh, zsh, irb, nâng lên, python, sudo su, nút, và nhiều hơn nữa. Nó là các cách tiêu chuẩn để thoát khỏi bất kỳ loại vỏ nào. - Ajedi32
Không chỉ là một cái vỏ. Bất kỳ chương trình sane hợp lý mà đọc từ stdin và giải thích chuỗi rỗng như EOF sẽ chấp nhận ^ D. - Kevin
Điều này không làm việc cho tôi, có lẽ vì tôi sử dụng bố trí bàn phím Dvorak trên OSX. Cả cmd-D lẫn cmd-E (trong đó D trên Qwerty) đều hoạt động. - NessBird
@NessBird Ctrl không giống với Cmd. Hãy thử Control-D thay vì Command-D. - Tilman Schmidt


Đối với dòng lệnh Linux \ q + đi vào. 

Quiting với Ctrl + D cũng là công trình


12
2017-10-21 09:34





Thử:

  • Ctrl+Z - điều này sẽ gửi TSTP tín hiệu (TSTP viết tắt của “terminal stop”)
  • Ctrl+\ - điều này sẽ gửi QUIT tín hiệu

Đối với sự tò mò:

  • Ctrl+D - điều này sẽ gửi EOF tính cách. EOF là viết tắt của "end of file". Trong trường hợp cụ thể này, nó thoát ra khỏi chương trình con psql, vì trình bao đang đợi đầu vào của người dùng. Đây không phải là 'cách để đi' vì nó không hoạt động nếu:
    • bất kỳ ký tự nào khác được nhập trước đó - hãy thử nhập một số khoảng trắng và sau đó nhấn Ctrl+D, nó sẽ không thoát khỏi psql.
    • nếu đầu vào của người dùng không bắt buộc

12
2017-11-07 20:49



Không cần phải "thử" bất cứ điều gì. Lệnh thích hợp để thoát sạch psql Là tài liệu tốt và là \q - a_horse_with_no_name
Như @hobs nêu rõ về \q: "Điều này sẽ không hoạt động nếu bạn đang ở chế độ phụ trợ người dùng đơn (--single). Thay vào đó, hãy sử dụng câu trả lời của Kaarel (CtrlD) ". IMHO sử dụng CtrlD cũng không phải là cách để đi, và tôi đã giải thích lý do tại sao và đưa ra một giải pháp thay thế. - iusting
Cảm ơn bạn! Ctrl+Z là lệnh duy nhất làm việc cho tôi - tôi đã được kết nối với cơ sở dữ liệu qua đường hầm bị mất kết nối - không phải \q cũng không Ctrl+D đã làm việc, nhưng tôi có thể Ctrl+Z và sau đó giết quá trình bị đình chỉ - Sergey


Dựa trên PostgreSQL 11 Beta 1 đã được phát hành!:

Cải tiến trải nghiệm người dùng

Một tính năng khác rơi vào thể loại này là không có khả năng bỏ trực giác từ dòng lệnh PostgreSQL (psql). Đã có rất nhiều khiếu nại được ghi lại của người dùng đang cố gắng thoát với bỏ và lối thoát lệnh, chỉ để biết rằng lệnh để làm như vậy là \ q.

Chúng tôi đã nghe thấy sự thất vọng của bạn và hiện đã thêm khả năng thoát khỏi dòng lệnh bằng cách sử dụng từ khóa bỏ và lối thoát và hy vọng rằng việc bỏ qua một phiên PostgreSQL bây giờ cũng thú vị như khi sử dụng PostgreSQL.


4
2018-05-24 15:48



thói quen xấu, thói quen xấu ở mọi nơi - easl
@randomware Bạn có thể xây dựng? - Lukasz Szozda
có, tôi có nghĩa là dấu gạch chéo ngược là thỏa đáng và phù hợp với các lệnh pgsql bán nội bộ khác, và một sẽ làm \? hoặc là \h để tiếp tục học 'mọi thứ khác' imho - easl
"Đã có rất nhiều khiếu nại được ghi lại" -> "dấu gạch chéo ngược là thỏa đáng"? Heh. - Steve Bennett


Tôi đã học được rằng tôi có thể bao gồm \ q trong một tập tin batch .sql, vì vậy tôi có thể có psql bỏ sớm hơn từ một hoạt động \ i.


3
2018-06-23 00:13





Đối với cửa sổ bảng điều khiển Psql:
 
Thử đơn giản Ctrl + C

Nó sẽ thực thi \ q để thoát chế độ console.


0
2017-07-26 12:04