Tengo un problema en el que si escribo comandos muy largos en bash, el terminal no mostrará lo que estoy escribiendo correctamente. Esperaría eso si tuviera un comando como el siguiente:
username@someserver ~/somepath $ ssh -i /path/to/private/key
myusername@something.someserver.com
El comando debe representarse en dos líneas. En cambio, a menudo se ajustará y comenzará a escribir sobre la parte superior de mi mensaje, algo así:
myreallylongusername@something.somelongserver.comh -i /path/to/private/key
Si decido regresar y cambiar algún argumento, no se sabe dónde aparecerá el cursor, a veces en el medio de la solicitud, pero generalmente en la línea de arriba donde estoy escribiendo.
Diversión adicional sucede cuando cuando Upa un comando anterior. He intentado esto en gnome-terminal y terminator y en i3 y Cinnamon. Alguien sugirió que era mi mensaje, así que aquí está:
\[\033[01;32m\]\u:\[\033[01;34m\] \W\033[01;34m \$\[\033[00m\]
Ctrll, reset
y clear
todos hacen lo que dicen, pero cuando vuelvo a escribir el comando o Upsucede lo mismo.
Lo comprobé y checkwinsize
está habilitado en bash. Esto sucede en 80x24 y otros tamaños de ventana.
¿Es esto algo con lo que aprendo a vivir? ¿Hay alguna pieza de magia que debería saber? Me he conformado con usar un mensaje muy breve, pero eso no soluciona el problema.
\[\033[01;32m\]\u: \[\033[01;34m\]\W \[\033[01;34m\] \$ \[\033[0m\]
parece evitar la rareza en el comportamiento - pero no sé si se respeta su pronta originales por completo ...
tput smam
env -i bash --norc
arregla. Los $ COLUMNS y $ LINES coinciden. ¿Eso significa que hay algo divertido con mi .bashrc?