Al pegar accidentalmente un archivo en el shell, pone un montón de entradas feas sin sentido en el historial de bash. ¿Hay una manera limpia de eliminar esas entradas? Obviamente, podría cerrar el shell y editar el .bash_history
archivo manualmente, pero ¿tal vez hay algún tipo de API disponible para modificar el historial del shell actual?
fuente
tot_lines=$(history | wc -l)
y luego repetirhistory -d $(( tot_lines - $1 ))
.$(history | wc -l)
, existe la variable$HISTCMD
que se puede utilizar.Solo este trazador de líneas en el símbolo del sistema ayudará.
Donde START_NUM es la posición inicial de entrada en el historial. N es el número de entradas que puede querer eliminar.
ex:
for i in {1..50}; do history -d 1030; done
fuente
La respuesta del usuario 2982704 casi funcionó para mí, pero no del todo. Tuve que hacer una pequeña variación como esta.
Suponiendo que mi historial está en 1000 y quiero eliminar las últimas 50 entradas
fuente