Algo que noté en Ubuntu durante mucho tiempo y que me ha frustrado es cuando escribo un comando en la línea de comando que se hace más largo (más ancho) que el ancho del terminal, en lugar de ajustarse a una nueva línea, vuelve a columna 1 en la misma línea y comienza a sobrescribir el comienzo de mi línea de comando. (En realidad, no sobrescribe el comando real, pero visualmente, sobrescribe el texto que se mostró).
Es difícil de explicar sin verlo, pero digamos que mi terminal tenía 20 caracteres de ancho (el mío tiene más de 120 caracteres, pero solo por un ejemplo), y quiero hacer eco del alfabeto inglés. Lo que escribo es esto:
echo abcdefghijklmnopqrstuvwxyz
Pero cómo se ve mi terminal antes de presionar la tecla es:
pqrstuvwxyzghijklmno
Cuando presiono enter, se hace eco
abcdefghijklmnopqrstuvwxyz
entonces sé que el comando se recibió correctamente. Simplemente envolvió mi escritura después de la "o" y comenzó de nuevo en la misma línea.
Lo que esperaría que sucediera, si escribiera este comando en una terminal que solo tenía 20 caracteres de ancho, sería esto:
echo abcdefghijklmno
pqrstuvwxyz
Antecedentes: estoy usando bash como mi shell, y tengo esta línea en mi ~ / .bashrc:
set -o vi
para poder navegar por la línea de comandos con comandos VI. Actualmente estoy usando el servidor Ubuntu 10.10 y me estoy conectando al servidor con Putty.
En cualquier otro entorno en el que haya trabajado, si escribo una línea de comando larga, agregará una nueva línea debajo de la línea en la que estoy trabajando cuando mi comando sea más largo que el ancho del terminal y cuando sigo escribiendo puedo ver mi comando en 2 líneas diferentes Pero mientras pueda recordar haber usado Ubuntu, mis comandos largos solo ocupan 1 línea.
Esto también sucede cuando vuelvo a los comandos anteriores en el historial (presiono Esc, luego 'K' para volver a los comandos anteriores): cuando llego a un comando anterior que era más largo que el ancho del terminal, la línea de comando se pone destrozado y no puedo decir dónde estoy en el comando.
La única solución que he encontrado para ver todo el comando largo es presionar "Esc-V", que abre el comando actual en un editor de VI.
No creo que tenga nada extraño en mi archivo .bashrc. Comenté la línea "set -o vi", y todavía tenía el problema.
Descargué una copia nueva de Putty y no realicé ningún cambio en la configuración; simplemente escribí mi nombre de host para conectarme y todavía tengo el problema, así que no creo que sea algo con Putty (a menos que necesite hacer algunos cambios de configuración)
¿Alguien más ha tenido este problema y alguien puede pensar en cómo solucionarlo?
Editar
Era mi archivo .bashrc. Copié el mismo perfil de máquina a máquina, y usé caracteres especiales en mi $ PS1 que de alguna manera lo están descartando. Ahora me quedo con las variables bash estándar para mi $ PS1.
¡Gracias a @ ændrük por el consejo sobre el .bashrc!
... Fin Editar ...
tput smam
/etc/skel/.bashrc
. Tenga en cuenta que deberá volver a conectarse para que los cambios surtan efecto y asegúrese de mantener una copia de seguridad de su propio .bashrc.