PostgreSQL komut satırı yardımcı programından nasıl çıkılır: psql


1820

PostgreSQL komut satırı yardımcı programından çıkmak için hangi komutu veya kısa anahtarı kullanabilirim psql?


4
@a_horse_with_no_name: Sorudan şok değilim, ama yukarı oyların sayısı :) Karşılaştırın örn. Vi editörünü tek tuşa basarak nasıl
user272735

174
Bazen gerçek soruna odaklanmak için kılavuzda aramaya göre hızlı ve doğrudan bir cevap almamız gerekir.Bu gibi durumlarda bu kısa sorular gerçekten yararlıdır.
Uygulama Çalışması

175
Asıl soru "insanlar bir manuel okuma yeteneğine sahip" değil, "kurumsal yazılım standart çıkış sekanslarına cevap vermelidir" gibi, bilmiyorum "çıkış" mı? Çıkmak için kılavuzu okumak zorunda kalmak ciddi şekilde sezgisel görünüyor.
Kheldar

23
@Kheldar Gerçekten kötü kullanıcı arayüzü tasarımı (kibirle birleştiğinde). İnsanlar tuhaf şeyler konusunda güvensizdir.
Iain Collins

49
daha da önemlisi, ben bu yazı şimdi google "çıkış psql" ne zaman ilk hit
Angel S. Moreno

Yanıtlar:


2540

Çıkın \qve ENTERçıkmak için tuşuna basın psql.

GÜNCELLEME: 19 EKİM-2018

İtibariyle PostgreSQL 11 , anahtar kelimeleri " quit" ve " exitPostgreSQL komut satırı arayüzünde" yardım etmek dahil edilmiştir daha kolay komut satırı aracını terk etmek olun.


28
Tek kullanıcılı arka uç modundaysanız ( --single) çalışmaz . Bunun yerine Kaarel'nin cevabını ( Ctrl-D) kullanın. Her zaman pgsql'de çalışmaya ek olarak, diğer unix kabuklarınızın çoğunda (python, mysql, vb.) Eğer işleri her zaman "standart" şekilde yaparsanız, beyniniz trivia ile daha az karmaşıklaşır.
ocaklar

1
\? Yazın "yardım" yardımcı olmazsa yardım için. Bu, insan bilgisayar etkileşiminin nasıl yaratılamayacağına dair ışıltılı bir örnektir. Bu harika fikri kim düşünmüştü? yardım ve çıkmak için \ q?
Jaywalker

1
Ctrl-d de yardım
Genç


1
@aorth Evet, birkaç ay önce duyurdular: stackoverflow.com/a/50513432/5070879
Lukasz Szozda

747

Her zamanki anahtar dizim:

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

Ben psql komut satırı gazileri genellikle sadece kısaltmak düşünüyorum:

\q

3
Kendimi ctrl-z denedim. İşi az ya da çok yaptı, ama tamamen tatmin olmadım. :(
mjwach

12
cntrl + D herhangi bir yerden çıkmak için
vidur punj

1
@mjwach ctrl + z, işlemi arka plana askıya alır, neredeyse kesinlikle ne istediğinizi değil.
LucidObscurity

postgres = # / q postgres- # \ q
Dzmitry Prakapenka

2
Cevabınızla güldü. Kullandığımız tüm farklı araçlar nedeniyle beyin fırtınası yapıldı.
Sergio A.

299

Ctrl+ Dgenellikle psql konsolundan çıkmak için kullandığım şeydir.


3
Evet. Bu ayrıca bash, sh, ssh, zsh, irb, pry, python, sudo su, node ve daha fazlasında da çalışır. Öyle herhangi türden bir kabuk çıkmak için standart bir yol.
Ajedi32

5
Sadece bir kabuk değil. Stdin'den okunan ve boş dizgiyi EOF olarak yorumlayan makul bir aklı başında program ^ D kabul edecektir.
Kevin

Muhtemelen OSX'te Dvorak klavye düzenini kullandığım için bu benim için çalışmıyor. Ne cmd-D ne de cmd-E (D, Qwerty'de bulunur) çalışmaz.
NessBird

4
@NessBird Ctrl, Cmd ile aynı değildir. Command-D yerine Control-D'yi deneyin.
Tilman Schmidt

27

Deneyin:

  • Ctrl+ Z- bu TSTPsinyali gönderir ( TSTP“terminal durdurma” nın kısaltmasıdır)
  • Ctrl+ \- bu QUITsinyali gönderir

Merak için:

  • Ctrl+ D- bu EOFkarakteri gönderir . EOF"dosya sonu" anlamına gelir. Bu somut durumda, kabuk kullanıcı girdisini beklediği için psql alt programından çıkar. Bu 'gitmenin yolu' olmamalıdır, çünkü eğer çalışmazsa:
    • daha önce başka bir karakter girilir - bazı beyaz boşluklar girmeyi deneyin ve sonra Ctrl+ tuşuna basın D, psql'den çıkmayacaktır.
    • kullanıcı girişi hiç gerekli değilse

4
Hiçbir şey "denemeye" gerek yoktur. Temiz bir şekilde çıkmak için uygun komutu psqlalmaktadır iyi belgelenmiş ve bir\q
a_horse_with_no_name

2
@Hobs'un açıkça belirttiği gibi \q: "Tek kullanıcılı arka uç modundaysanız (--single) bu işe yaramaz. Bunun yerine Kaarel'in yanıtını ( CtrlD) kullanın". IMHO CtrlDkullanımı da gitmenin yolu değil ve neden yukarıda olduğunu açıkladım ve bir alternatif sundum.
iusting

1
Teşekkür ederim! Ctrl+Zbenim için çalışan tek komuttu - bağlantıyı kaybeden tünel aracılığıyla bir veritabanına bağlandım - ne ne \qde Ctrl+Dçalıştı, ama Ctrl+Zaskıya alınan işlemi öldürebilir ve öldürebilirim
Sergey

20

quitveya exitveya\q

Dayanarak PostgreSQL 11 Beta 1 Çıktı! :

Kullanıcı Deneyimi Geliştirmeleri

Bu kategoriye giren bir diğer özellik de PostgreSQL komut satırından (psql) sezgisel olarak çıkamama idi. Çıkma ve çıkış komutlarıyla çıkmaya çalışan kullanıcıların kaydedilmiş çok sayıda şikayeti vardır , sadece bunu yapmak için komutun \ q olduğunu öğrenmek için .

Hayal kırıklıklarınızı duyduk ve şimdi quit ve exit anahtar sözcüklerini kullanarak komut satırından çıkma özelliğini ekledik ve bir PostgreSQL oturumundan çıkmak artık PostgreSQL'i kullanmak kadar keyifli.


2
kötü alışkanlıklar, her yerde kötü alışkanlıklar

1
@randomware Ayrıntılı olabilir misiniz?
Lukasz Szozda

1
evet, yani ters eğik çizgi tatmin edici ve diğer iç noktalı virgülsüz pgsql komutlarıyla tutarlıydı ve biri 'diğer her şeyi' öğrenmeye devam edecek \?ya \hda devam edecek

6
"Çok sayıda şikayet kaydedildi" -> "ters eğiklik tatmin edici" mi? Heh.
Steve Bennett


8

Bir toplu iş .sql dosyasına \ q ekleyebilir öğrendim, bu yüzden daha önce bir \ i işleminden çıkın psql olabilir.


4

Aslında \q, exitve CTRL + Din den çıkmak için benim için çalıştı psql'in programı.

Ctrl + Shift + D

Benim için çalıştı. Umarım birine yardım edersiniz :)

Benim ubuntu versiyonu 19.04


0

Özellikle, Ubuntu 18.04'te aşağıdaki durumdan nasıl çıkılacağı.

Orijinal durumu aşağıdaki gibi koydum.

postgres@user:~$

Psql girilirse, aşağıdaki gibi yeni duruma geçer.

postgres@user:~$ psql

postgres=# 

\ Q girilirse, lütfen işleme bakın.

postgres@user:~$ \q

Orijinal duruma aşağıdaki gibi değişir.

postgres@user:~$

Hızlı yol terminali öldürmektir. Ama terminali öldürmeden diğer bırakma yöntemini bilmek istiyorum.

Teşekkürler,

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.