Terminal emülatörlerini değiştirme


10

Uzak makineye ssh erişimim var. Bu makinede koşarsam echo $TERMalırım xterm.

Terminal öykünücümü başka bir öykünücüyle değiştirmek istersem (uzaktaki makinede yüklü olduğu varsayılarak), bunu nasıl yaparım?

Yanıtlar:


15

Ortam değişkeni TERM değeri sunucu tarafından (sistem V veya BSD'de türetilmiş işletim sistemlerinde) girdinin sistem tarafından nasıl tanındığını ve çıktı için hangi yeteneklerin bulunduğunu denetlemek için kullanılır. Bazı terminal türleri, hala yararlı kalırken değiştirilebilecekleri kadar benzerdir, diğerleri ise TERM için desteklenen bir değere sahip yeni bir bağlantı açana kadar sistemi kullanılamaz hale getirebilir. Örneğin, bir Linux sisteminden diğerine, muhtemelen vt100, vt220 ve xterm ayarları arasında çok az fark görürsünüz. Farklılıkların çoğu çıktının nasıl gösterileceği ve bu tür terminaller için renklerin mi yoksa kalın yazı tiplerinin mi kullanılabilir olduğu ile ilgilidir. Termcap veritabanı, tüm terminal türlerini, çeşitli yetenekleriyle listeler.

Klavyenizin ve ekranınızın uyumlu olmadığı bir terminal türüne geçmediğiniz sürece, iyi olacaksınız.

daha fazla bilgi için sisteminizde terim için man sayfasını ve termcap'ı okuyun.

Terminal tipini değiştirmek için:

bash içinde:

export TERM=vt100

bourne kabuğu veya ksh:

TERM=vt100
export TERM

csh veya tcsh olarak:

setenv TERM vt100

vt100oynamaya başlamak için oldukça güvenli bir terminal. xterm ile uyumludur, ancak renkleri veya kalın yazı tiplerini göstermez ve F * tuşlarınızı tanımayabilir, ancak vt100 kullanarak herhangi bir şeyi karıştırmanız pek olası değildir.

Birçok kişi, sunucuya nasıl giriş yaptıklarına bağlı olarak kullanıcı deneyimlerini optimize etmek için kişisel başlangıç ​​komut dosyalarında terminal algılamayı kullanır. Örneğin, vt100 kullanıyorsanız düz bir PS1 ayarlayın, xterm'de bash kullanırken renk ve dinamik değişkenler kullanın.

Araştırmanızda iyi şanslar.


3
@intrpc TERMDeğişkeni değiştirmenin oldukça nadir olduğunu unutmayın ; daha yeni bir terminalin adını bilmeyen daha eski bir sistemde oturum açtığınızda çoğunlukla gereklidir (ve son 15 yılda pek çok yeni terminal türü olmadıysa, çoğu terminal emülatörlerinin kendileri tarzıdır xterm). TERMterminal tipi programların konuştuklarına inandıkları şey, terminalin gerçekte ne olduğunu değiştirmez.
Gilles 'SO- kötü olmayı bırak

9

Yanlış anlıyorsun.

LOCAL tarafındaki konsolunuz veya terminaliniz veya PuTTY örneğiniz gerçek "terminal öykünücüsü" olmasına rağmen, günümüzde "terminaller" e kısalmasına rağmen. Kullanıcılar, birden çok konsol ve grafik kullanıcı ortamı kullanmak yerine ana bilgisayar sunucusunda oturum açmak için monitör ve klavye terminallerini kullandıklarında kullanım arkadan kaynaklanır.

$ TERM değişkeni, uzaktaki sisteme terminalinizin gönderirken ne tür kontrol kodlarını anlayacağını söyler (örneğin, metin tabanlı menüler veya libncurses tabanlı herhangi bir şey oluşturmak için).

Tam olarak neyi başarmak istediğinizden emin değilim, ancak $ TERM değerini değiştirmek muhtemelen yardımcı olmaz.


Teşekkürler @Shadur, bu yardımcı oldu. Daha fazla renk için desteği etkinleştirmek istiyorum. Bu sorudaki güncellemede açıkladığım gibi, kaçan karakterlerle ilgili sorunlar yaşıyorum . Önemli olması durumunda, her iki makine / sistem modern ( Ubuntu 11.10yerel makinemde ve Red Hat Enterprise Linux Server release 5.4 (Tikanga)uzak makinemde )
Amelio Vazquez-Reina

Maalesef, bağlantı yanlış soruydu. Yukarıdaki yorumumu yeni düzenledim.
Amelio Vazquez-Reina

O zaman sorun hala TERM değişkeni değil, çünkü gnome terminal pencerem, xterm $ TERM değeri olan uzak bir sunucuya SSHed, ansi renkleri oluşturmada sorun yaşamıyor. Eğer çözüm olacağını düşündüğünüzü nasıl uygulayacağınızı sormak yerine sorununuzu açıklarsanız daha iyi olabilir.
Shadur

Teşekkürler, ama "benim sorunum" $TERMdeğişken olduğunu söylemedim . Ayrıca, bu soruyu yalnızca farklı bir soruna / soruna çözüm bulmak amacıyla sormuyorum. Bir şey olursa, diğer sorum bu soruyu motive etti . Son olarak, terminal emülatörlerinin bu soruyu sorarak nasıl çalıştığı hakkında daha fazla bilgi edinmek umuduyla yanlış bir şey olduğunu düşünmüyorum.
Amelio Vazquez-Reina

Bu arada, beni yanlış anlamayın, tavsiyelerinizi takdir ediyorum ve daha önce de söylediğim gibi, cevabınız terminal emülatörlerini daha iyi anlamama yardımcı oldu.
Amelio Vazquez-Reina
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.