en este momento estoy usando un código perl de una línea para cambiar los títulos de mis barras de terminales,
print("\e]0;@ARGV\7");
pero cada vez que ssh a otra máquina remota, el título será modificado por el host (por lo cual no estoy particularmente molesto). Pero después de salir de la conexión, el título modificado permanece. ¿Hay alguna manera de arreglar esto? esencialmente quiero un título fijo para mis terminales cuando opere localmente.
Principalmente uso el terminal y terminador xfce en CentOS o Debian. Gracias.
EDITAR
Otra sutileza es que, en lugar de tener todas las terminales con el mismo nombre, preferiría tener la libertad de editar sus títulos sobre la marcha, pero solo prohibir que la sesión SSH modifique lo que edité.
Solución: agregue algunas funciones ~ / .bashrc para hacer algo después de los comandos ssh y su
Nota: reinicie bash después de las ediciones en ~ / .bashrc
Ejemplo:
Espero que ayude.
fuente
revert
ya que no verifica qué era antes ... si consultó y guardó el valor anterior aunque ;-)Configure su archivo de puntos de shell local (por ejemplo,
$PROMPT_COMMAND
en~/.bashrc
) para establecer el título del terminal de manera apropiada, utilizando el mismo mecanismo.Por ejemplo:
fuente
export PROMPT_COMMAND="printf '\e]0;\7\n'"
), entonces su emulador de terminal puede establecer el título de la ventana como mejor le parezca. Cuando ssh a un host remoto que establece el título del terminal, su emulador de terminal mostrará ese título, y cuando cierre la sesión, volverá a usar su propio título. Al menos, así es como funciona la aplicación MacOS Terminal.AGREGAR estas líneas a ~ / .bashrc
funciona bien con Linux basados en Debian
fuente
PROMPT_COMMAND
lugar de usarPS1
, ya que no tiene que incluir los\[ \]
corchetes y puede eliminar algunas citas.Una solución es cambiar la variable terminal a vt100 antes de ssh'ing, por ejemplo, ejecutar
Esto funciona porque generalmente los scripts de inicialización miran la variable terminal y solo cambian su título si es xterm. Pierdes pantallas alternativas, colores y quizás algunas otras características sofisticadas que puedes apreciar o no.
Si desea mantener el terminal local como xterm, alias ssh para cambiar la variable del terminal sobre la marcha, como
fuente
Solucioné este problema agregando esto a mi PS1 en mi archivo .bashrc.
Por lo tanto, toda la línea tiene este aspecto (¡he personalizado mi PS !:
Espero que eso ayude a los demás.
fuente
export PS1='\[\033]0;\007\]\h:\W \u\$ '
), entonces su emulador de terminal puede establecer el título de la ventana como mejor le parezca. Cuando ssh a un host remoto que establece el título del terminal, su emulador de terminal lo mostrará, y cuando cierre la sesión, volverá a usar su propio título. Al menos, así es como funciona la aplicación MacOS Terminal.Otras respuestas no funcionarían para mí cuando salga de SSH, pero me acercó. Agregar setw automatic-rename funciona cuando salgo de la sesión ssh remota, por lo que cambia automáticamente el nombre y ya no tengo que salir de la ventana para restablecer. [Ene. 2018 - Debian 9]
fuente