У мене є ssh доступ до віддаленої машини. У цій машині, якщо я запускаю, echo $TERM
я потрапляю xterm
.
Якщо я хочу змінити емулятор терміналу на інший емулятор (якщо припустити, що він встановлений на віддаленій машині), як би це зробити?
У мене є ssh доступ до віддаленої машини. У цій машині, якщо я запускаю, echo $TERM
я потрапляю xterm
.
Якщо я хочу змінити емулятор терміналу на інший емулятор (якщо припустити, що він встановлений на віддаленій машині), як би це зробити?
Відповіді:
Значення змінної середовища TERM використовується сервером (у системі V або BSD, похідних ОС) для управління тим, як вхід розпізнається системою та які можливості існують для виведення. Деякі типи терміналів досить схожі, що їх можна міняти, залишаючись корисними, а інші можуть зробити систему непридатною, поки ви не відкриєте нове з'єднання з підтримуваним значенням для TERM. Наприклад, від однієї системи Linux до іншої, ви, мабуть, відчуєте дуже невелику різницю між налаштуваннями vt100, vt220 та xterm. Більшість відмінностей полягають у тому, як відображається вихід, і чи доступні кольори або жирні шрифти для цього типу терміналу. У базі даних termcap перераховані всі типи терміналів з різними можливостями.
Поки ви не переключитесь на тип терміналу, з яким ваша клавіатура та екран не сумісні, ви будете добре.
читайте довідкову сторінку щодо терміна та термінакап у своїй системі для отримання додаткової інформації.
Щоб змінити тип терміналу:
в баші:
export TERM=vt100
в бурновій оболонці або ksh:
TERM=vt100
export TERM
в csh або tcsh:
setenv TERM vt100
vt100
це досить безпечний термінал, з яким можна почати грати. він сумісний з xterm, але він не відображає кольори або жирних шрифтів і може не розпізнавати ваші клавіші F *, але ви навряд чи дійсно щось зіпсуєте за допомогою vt100.
Дуже багато людей використовують виявлення терміналу в персональних сценаріях init, щоб оптимізувати свою роботу користувачів залежно від того, як вони входять у сервер. Наприклад, встановіть звичайний PS1, якщо ви використовуєте vt100, використовуйте кольорові та динамічні змінні, коли використовуєте bash в xterm.
Успіхів у ваших дослідженнях.
Ти нерозумієш.
Ваша консоль, термінал або екземпляр PuTTY на стороні LOCAL - це власне "емулятор терміналу", хоча сьогодні ми просто скорочуємо до "терміналів". Використання пов'язане з того часу, коли люди фактично використовували термінали монітора та клавіатури для входу на сервер основного кадру, а не з використанням декількох консолей та графічних середовищ користувача.
Змінна $ TERM просто повідомляє віддаленій системі про те, які коди управління зрозуміє ваш термінал, коли він надсилає їх (наприклад, для генерування текстових меню або нічого, що базується на libncurses).
Я не впевнений, що саме ви хочете досягти, але зміна $ TERM, ймовірно, не допоможе.
Ubuntu 11.10
на моїй локальній машині та Red Hat Enterprise Linux Server release 5.4 (Tikanga)
на віддаленій машині)
$TERM
змінною. Також я не задаю це питання єдиною метою пошуку рішення іншої проблеми / питання. Якщо що, моє інше питання мотивувало це питання. Нарешті, я не думаю, що немає нічого поганого в надії дізнатися більше про те, як працюють емулятори терміналів, задавши це запитання.
TERM
змінну; в основному це потрібно, коли ви входите в старішу систему, яка не знає назви нового терміналу (а останніх 15 років не було багато типів нових терміналів, як і більшість емуляторів терміналівxterm
).TERM
це те, що програми типу терміналу вважають, що вони розмовляють, це не змінює те, що термінал є насправді.