Terminal programları bazen metin girişini sonlandırmak için ctrl-D'ye ihtiyaç duyar


2

Bazen bir terminal, Enter tuşunun artık metin girişi komutlarını uygun şekilde sonlandırmadığı bir duruma girer. Örneğin, çalıştırırken sudogenellikle sadece şifremi yazıp Enter tuşuna basın. Bununla birlikte, bazen itmenin Enterbelirgin bir etkisi olmaz ve Ctrl+ ile bir EOF karakteri girmem gerekir D. Bu garip davranış daha sonra terminalin ömrünün geri kalan kısmında da devam eder.

Bu davranışa ne sebep olur?

Yanıtlar:


3

Her nasılsa terminalin modunu değiştirmeyi başardın. İlk durumu, sonradan ‛stty -a> s.1 a olan bir dosyaya kaydedin, s.2'ye kaydedin ve 2 dosyayı karşılaştırın ya da sorunuza ekleyin.


Teşekkür ederim! (Un) neyse ki, bu oldukça nadir bir durum, bu yüzden şu anda teorinizi test edemiyorum, ancak bu yıllarca periyodik olarak gerçekleşti ve ilk kez nereye bakacağımı hiç düşünmedim. Tavsiyenizi bir sonraki fırsatta takip edeceğim.
Drew Frank

Sorun değilken terminalin durumunu koruyabilirsiniz, bu yüzden arıza yaptığında kullanışlı olursunuz.
ott

1
Sabırsız oldum ve stty man sayfasına bir göz attım. Varsayılan olarak, "icrnl" ayarı etkindir, bu da giriş satırının yeni satırlara çevrilmesini sağlar. Açıkça bunu devre dışı bırakırsam stty -icrnl, terminal soruda tarif ettiğim davranışı sergiler. Geri stty icrnlyükleme işlemi normal işlevi geri yükler. Sorunun çözüldüğünü düşüneceğim - tek gizem yanlışlıkla bu ayarı nasıl değiştirdiğim.
Drew Frank

1
Belki bir editör veya çöktü başka lanetler-program?
ott

Zeki. Soruşturma üzerine, bunun benim için asıl nedeninin bir ipython parçası olduğundan eminim. Bu hata ayıklama yardımınız için tekrar teşekkürler, ott; Sonunda ne olduğunu bilmek çok tatmin edici!
Drew Frank,
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.