Bir kedi / dev / urandom mu - Kırık terminal


31

Meraktan, kabuk karakter kümenizin böyle cat /dev/urandombir şey yapmasından koptuğu zaman, bunu düzeltmenin bir yolu var mı?


6
Elbette ... bunu yapma! Ayrıca, bir komutun geçersiz karakterler üretebileceğini düşünüyorsanız, kullanın cat -A.
jnylen

2
Ayrıca, catkarakter
kümenizi

cat / bin / ls sıklıkla bunu düzeltir (neden olduğundan emin değilim)
skarface 21.05 te

2
@crasic: terminale ikili gönderir ve her terminalin özel karakterleri alarak font / color / etc'yi değiştirme yolları vardır. Müthiş bakın: linusakesson.net/programming/tty (aka "TTY parçalandı). TERM ayarlarınıza bağlı olarak, farklı şekilde de tepki verecektir (ve elbette, hangi baytları alacağını ve hangi sırayla).
Olivier Dulac

@skarface: Muhtemelen / bin / ls nin ikilisinin sonunda, ekranı düzelten bayt dizilerine sahip olduğu için şanslısınız. Bu, OS üzerinde ikili (yani versiyonu kullanılan derleme Ne optino, vb), ve terminal ve ... SÜRE ayarını bağlı olacaktır ederim yerine "stty sane" ^^ kullanmanızı tavsiye yüzden
Olivier Dulac

Yanıtlar:


50

Bunlardan birini deneyin:

stty sane

veya

reset

Her ikisi de işe yaramazsa veya terminaliniz o kadar karışıksa bile komutları giremezsiniz, o zaman terminali kapatıp yenisini başlatmak en iyisidir.

Not stty sanePOSIX ile tanımlanır ise resetdeğildir. Bu, bazı sistemlerde reset, sistemin tamamen sıfırlanması gibi tamamen farklı bir şey olabileceği veya olamayabileceği anlamına gelir . Henüz olmadan bir sistemle karşılaşmadım reset.

Daha fazla arka plan bilgisi için "Linux klavye ve konsol NASIL" NASIL " Terminalinizi sıfırlama " bölümünü okuyun .


Sana doğru cevabı verdim, çünkü ilk kişi sendin. Diğerleri için özür dilerim.
Pedro Montoto García

Genel olarak, bir terminale rastgele bayt yazmak, onu düzeltmek için akıllıca düşünülmesi gereken bir duruma sokması pek mümkün değildir; Bu, çökmekte olan bir programdan gelme olasılığı daha yüksektir.
Random832

stty sanegüvenli ve uygun bir yoldur (lain cevabının altındaki yorumlarda belirttiğim nedenlerden dolayı "reset" yapmaktan bıktım)
Olivier Dulac 29:13

1
@OlivierDulac Deneyiminizi paylaştığınız için teşekkür ederiz. resetPOSIX tarafından tanımlanmadığını araştırdım ve öğrendim .
lesmana,

1
@Iain @OlivierDulac FUD yayıyor sanmıyorum. reset"Güvenli" olmayan referans POSIX tarafından tanımlanmadığı gerçeğidir. Lütfen @OlivierDulac'ın FUD yaydığını FUD yaymayı bırakın.
lesmana

20

Sıfırlama komutunu kullanmayı deneyebilirsiniz .


4
Kılavuz sayfasını birbirine bağladınız, dolaylı olarak iyi bir RTFM önerdiniz. Bugün benim kahramanımsın, teşekkürler.
Luke404

Bu, birçok unix üzerinde çalışır ... Ama bir uyarı kelimesi: Dikkatli olun: Bazı sistemlerde (yani, diğer işletim sistemlerinde, ya da belki başka linux dağıtımında mı?) Bu bir sistem sıfırlaması başlatıyor olabilir (örneğin, inanıyorum ki solaris bazı sürümleri). Bu nedenle sistemi sıfırlamak, yani yeniden başlatmaya zorlamak (uygun şekilde kapanmadan) ... Herhangi bir komut için olduğu gibi, dikkatli olun. (Bu, diğer komutlar için de geçerlidir: örneğin bazı 'tar', "/" öneklerini kaldırmaz ve bu nedenle hassas dosyaların üzerine yazabilir, vb.) Kullanmayı düşündüğünüz komutun sistemde nasıl çalıştığını bildiğinizden emin olun. kullanıyorsanız.)
Olivier Dulac

1
@OlivierDulac; OP sorusu linux'yu etiketledi, böylece Solaris de dahil olmak üzere diğer unix sistemlerinde sorunsuz çalışacak olmasına rağmen bir yanlısı cevap aldı. Solaris ile 15 yıl çalıştım! SPARC Open Boot Prom reset komutunu userland reset (1) komutuyla karıştırıyorsunuz. Sıfırlama işlemini tamam komut isteminde yaparsanız, yine de bozuk bir terminalden kurtarma ihtimaliniz yoktur.
user9517

@ lalain: ah, bu gerçekten olabilir (Open Boot prom). Ama yine de, bazı durumlarda "reset" konağın sıfırlama ile bağlantılı olduğu anlamına gelir, bu yüzden insanları (linux üzerinde "çoğunlukla" olsalar bile) "güvenli" "stty sane" komutunu öğrenmeyi / kullanmayı (bunun ne olduğunu belirtir) tercih ederim. öyledir ve "reset" gibi belirsiz değildir) ... bu yüzden okuyucuları bu konuda uyarıyorum.
Olivier Dulac

@OlivierDulac Solaris, CentOS, Ubuntu, OpenBSD tüm linkleri tset'e sıfırladı - lütfen yanlış bilgileriniz için yanlış bir şey yaptığınıza dair kanıt sağlayın. OBP bir ana bilgisayar işletim sistemi değildir, bu yüzden sayılmaz.
user9517, GoFundMonica'da

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.