Tengo acceso ssh a una máquina remota. En esta máquina si corro echo $TERM
me sale xterm
.
Si quiero cambiar mi emulador de terminal a otro emulador (suponiendo que esté instalado en la máquina remota), ¿cómo lo haría?
Tengo acceso ssh a una máquina remota. En esta máquina si corro echo $TERM
me sale xterm
.
Si quiero cambiar mi emulador de terminal a otro emulador (suponiendo que esté instalado en la máquina remota), ¿cómo lo haría?
Respuestas:
El servidor utiliza el valor de la variable de entorno TERM (en los sistemas operativos derivados del sistema V o BSD) para controlar cómo el sistema reconoce la entrada y qué capacidades existen para la salida. Algunos tipos de terminales son lo suficientemente similares como para que puedan intercambiarse sin dejar de ser útiles, mientras que otros podrían dejar el sistema inutilizable hasta que abra una nueva conexión con un valor compatible para TERM. Por ejemplo, de un sistema Linux a otro, probablemente experimente muy poca diferencia entre las configuraciones vt100, vt220 y xterm. La mayoría de las diferencias estarían en cómo se muestra la salida y si los colores o las fuentes en negrita están disponibles para ese tipo de terminal. La base de datos termcap enumera todos los tipos de terminales, con sus diversas capacidades.
Siempre que no cambie a un tipo de terminal con el que su teclado y pantalla no sean compatibles, estará bien.
lea la página de manual para el término, y termcap, en su sistema para obtener más información.
Para cambiar el tipo de terminal:
en bash:
export TERM=vt100
en bourne shell o ksh:
TERM=vt100
export TERM
en csh o tcsh:
setenv TERM vt100
vt100
es un terminal bastante seguro para comenzar a jugar. es compatible con xterm, pero no muestra colores ni fuentes en negrita, y puede que no reconozca sus teclas F *, pero es poco probable que realmente estropee algo usando vt100.
Mucha gente usa la detección de terminal en scripts de inicio personales para optimizar su experiencia de usuario dependiendo de cómo inician sesión en el servidor. Por ejemplo, establezca una PS1 simple si está usando vt100, use color y variables dinámicas cuando use bash en un xterm.
Buena suerte con tu investigación.
Estás malentendido.
Su consola o terminal o instancia de PuTTY en el lado LOCAL es el "emulador de terminal" real, a pesar de que hoy en día solo acortamos a "terminales". El uso se remonta a cuando la gente realmente usaba terminales de monitor y teclado para iniciar sesión en un servidor mainframe en lugar de usar múltiples consolas y entornos gráficos de usuario.
La variable $ TERM simplemente le dice al sistema remoto qué tipo de códigos de control comprenderá su terminal cuando los envíe (por ejemplo, para generar menús basados en texto o cualquier cosa basada en libncurses).
No estoy seguro de qué es exactamente lo que quiere lograr, pero cambiar $ TERM probablemente no ayudará.
Ubuntu 11.10
en mi máquina local y Red Hat Enterprise Linux Server release 5.4 (Tikanga)
en la máquina remota)
$TERM
variable. Además, no estoy haciendo esta pregunta con el único propósito de encontrar una solución a un problema / pregunta diferente. En todo caso, mi otra pregunta motivó esta pregunta. Finalmente, no creo que haya nada malo en esperar aprender más sobre cómo funcionan los emuladores de terminal al hacer esta pregunta.
TERM
variable; es principalmente necesario cuando inicia sesión en un sistema antiguo que no conoce el nombre de un terminal más nuevo (y no ha habido muchos tipos de terminales nuevos en los últimos 15 años más o menos, la mayoría de los emuladores de terminales se denominan a sí mismosxterm
).TERM
es lo que los programas de tipo terminal creen que están hablando, no cambia lo que realmente es el terminal.