Oturumu düzgün şekilde kapatan kısayol (çıkış yazmadan) ile kabuktan çık


12

Günlük kullandığım ssh oturumları için bir ProxyJump komutu kullanıyorum ve ayrıca bu oturumlarda kullanıcıları çok değiştiriyorum ve exitarka arkaya 3 veya 4 kez yazmak zorunda değilsiniz çok eğlenceli değil.

Ben farkındayım newline+ ~+ .SSH oturumu sonlandırmak için, bir gibi dostça bunu sonlandırması durumunda hala kontrol etmek zorunda exitolur, ama nasıl tek komutla veya kısayol şekilde yazarak geçerli kabuğunda tüm oturumları çıkmak yok exit3 veya 4 kez benim durumumda bir defalık bir şey olur mu?


2
~.yalnızca SSH istemcinizin bağlantısını keser (örneğin ağ kaybolduğunda yararlıdır). Normalde, SSH arka plan programı bunu tanıyacak ve oturumunu işaret edecektir SIGHUP, bu nedenle kabuktan normal olarak çıkmakla aynı şey değildir (ancak kabuktan herhangi bir yanıt alamıyorsanız yararlıdır).
Toby Speight

Yanıtlar:


29

Ctrl- Dbirçok durumda bir kabuktan çıkacaktır. Yazmaktan daha hızlı exit Enter. Her şeyi sona erdirmek için hala tek bir komut değil, ancak birkaç kez basılı tutup Ctrlvurmak Ddaha kolay ve daha hızlı. Kullanım durumunuz için bunun ne kadar değerli olduğundan emin değilim.

Burada ayrıntılı olarak tartışıldı .


2
Bir sonraki durak unix.stackexchange.com/a/182071/5132 ve bundan sonraki durak ise daha fazla okuma. (-:
JdeBP

2
CTRL + D'ye dikkat edin. Bash'da, isteminize herhangi bir karakter girdiyseniz, CTRL + D tuşlarına basarsanız Enter tuşuna basarsınız. Başka bir deyişle, bir rmkomut yazmayın ve yürütmek istemediyseniz CTRL + D tuşlarına basın. Bu davranışı ksh olarak görmüyorum.
Peschke

2
@Peschke Şimdiye kadar kullandığım her sistemde Ctrl + D bir şey yazsaydım hiçbir şey yapmaz. Açıkladığınız davranışı hiç görmedim.
John Kugelman

1
@JohnKugelman RHEL 7.5 ile ilgili bash ile yaptığım yorumdaki davranışı test ettim ve onayladım.
Peschke

3
Peschke viterminal giriş bağlantılarını kullanıyor.
JdeBP

5

Yazmak ~.aslında tüm "iç içe" bağlantıları en derine kadar kapatma hile yapar .

Tüm mermileriniz SIGHUP'u zarif bir ölüm olarak ele alacak şekilde yapılandırıldığı sürece istediğiniz dostane çıkış ile bunu yapar. Bash bunu varsayılan olarak yapar. Kolayca sette çekim örn tarafından olmadığını görmek için dostane çıkış kontrol edebilirsiniz .bash_historysenin derin oturumların dosyaları düzgün ardından güncellenmesini ~.veya Çıkışta güncelleme .bash_history için bash-es değil ayarlarsanız o zaman bir ayarlayabilirsiniz trapüzerinde ~/.bash_logoutBir yere bir şeyler yazan bir komutla EXIT olayı (ya da sizin ) ve daha sonra çalıştırılıp çalıştırılmadığını görün.

Ayrıca, "şu anki kabuktaki tüm oturumlardan çık" ile ne demek istediğinizden emin değilim. Her etkileşimli bash yalnızca bir oturumdur ve yazdığınız komutlar her zaman yalnızca ProxyJump zincirinin en derin kabuğuna gider. "Geçerli kabuktaki arka plan işleri" demekse, bash, Ssh daemon tarafından SIGHUP alımındaki tüm işlerine SIGHUP gönderir ~., bu nedenle çalışan işler bir SIGHUP'a düzgün tepki verirse bu çıkış tamamen dostane olmalıdır.

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.