Sé que esto es extraño, pero de la nada, hoy copié un comando largo en la terminal y, en lugar de ajustar palabras como se supone, comenzó a sobrescribir la misma línea. El comando se ejecutó bien, pero se volvió ilegible. Normalmente, cuando sucede algo como esto, puede presionar Enter varias veces y se soluciona, pero no en este caso. Reinicié la terminal e incluso reinicié y es la misma historia.
Podría pensar que tiene algo que ver con el hecho de que edité mi archivo /etc/bash.bashrc para personalizar el mensaje con color, etc., pero lo hice hace varios días y no sucedió después de editarlo. Guardé una copia de seguridad por si acaso, así que si alguien piensa que podría ser eso, he incluido el resultado de la diferencia de los dos archivos:
$ diff /etc/bash.bashrc /etc/bash.bashrc.bak
19c19
< PS1='\e[1;32m\u: \e[m\w\n\e[1;33m\$\e[m '
---
> PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
Cualquier idea es útil, este es un problema realmente extraño.
Respuesta1
Intenta usar esto PS1
:
PS1='\[\e[1;32m\]\u: \[\e[m\]\w\n\[\e[1;33m\]\$\[\e[m\] '
La diferencia es que las secuencias de escape ( \e..
) están envueltas en \[ .. \]
, lo que ayuda a Bash a realizar un mejor seguimiento del cursor.