¿Cómo evitar que bash reemplace comandos en el historial con asteriscos? ('*')

¿Cómo evitar que bash reemplace comandos en el historial con asteriscos? ('*')

Tengo algunos comandos reemplazados *en el historial de bash, por ejemplo

1094  apt-get update
1095* 
1096  dpkg -i /var/cache/apt/archives/libssl1.0.0_1.0.0h-1_amd64.deb

¿Cómo prevenir esto?

Respuesta1

Como se explica en el Bashmanual, líneas históricas con el prefijo* han sido modificados. Esto sucede cuando navega hasta un comando (por ejemplo, usando la Uptecla), lo edita y luego se aleja de él sin presionar Enter. Entonces una línea histórica como esta:

1095* 

suele ser el resultado de navegar hasta un comando en el historial, retroceder y alejarse de él. Sabiendo esto, puedes evitar fácilmente que este tipo de líneas aparezcan en tu historial de Bash.

Por cierto, puedes revertir los comandos modificados a su estado sin editar navegando hasta ellos y presionando Ctrl+ _repetidamente.

Respuesta2

Parece que mark-modified-linesestá habilitado en tu shell. Intente desactivarlo en ~/.inputrc:

set mark-modified-lines Off

Detalles en man bash.

información relacionada