Hace un par de años, hice la actualización de distribución automática del 14.04 al 16.04. Por primera vez en mi vida, pude seguir usando la computadora después de la actualización de distribución automática. Como de costumbre, los repositorios de software están todos munted, por lo que las actualizaciones del sistema no funcionan correctamente, pero me las he arreglado.
Sin embargo, voy a hacer una instalación limpia de 18.04. Para poder configurar mi sistema más fácilmente después de la instalación, exporté mi historial de comandos a un archivo de texto.
$ history > /.../20180915_Command_history.txt
Bellamente, el archivo de texto resultante contiene números de línea. De manera un tanto misteriosa, el número de la primera línea es 76. Después de mirar las primeras líneas, parece que probablemente hubo algunos comandos anteriores.
- ¿Los números de línea simplemente comienzan en 76 por algún motivo?
- Si no es así, ¿hay alguna forma de que pueda ver las líneas 1 a 75?
Respuesta aceptada:
En primer lugar, si necesita obtener una copia de seguridad de su historial de línea de comandos, simplemente copie este archivo:
~/.bash_history
Recuerda que tienes que cerrar todas tus terminales o ejecutar history -a para agregar todos los comandos de esas sesiones de historial al archivo de historial.
Si no, ¿hay alguna manera de que pueda ver las líneas 1 a 75?
Todos los comandos que se han guardado en su historial están disponibles en ~/.bash_history archivo, para verlos todos abre una terminal y ejecuta:
cat ~/.bash_history
Para obtener una salida similar a history comando con ejecución de numeración:
cat -n ~/.bash_history
¿Los números de línea simplemente comienzan en 76 por alguna razón?
Ejecute este comando:
grep "^HIST" .bashrc
Tienes que obtener una salida similar a:
HISTSIZE=1000
HISTFILESIZE=2000
Como dije antes ~/.bash_history mantiene el historial de la línea de comandos.
-
El
HISTFILESIZEmuestra cuántos comandos debe~/.bash_historysigue la pista, para el mío es 2000. -
Y
HISTSIZEes el número de comandos quehistoryEl comando (en realidad, el shell incorporado) realiza un seguimiento.
Cuando abres una terminal y ejecutas history , elegirá el último HISTSIZE número de comandos de ~/.bash_history y te lo muestra.
Si ejecuta nuevos comandos, eliminará los más antiguos de la sesión y agregará los nuevos al final de su lista para que la cantidad de comandos coincida con HISTSIZE .
Supongo que al hacer la pregunta tenías 74 comandos más que de HISTSIZE en tu .bash_history y esa es la razón por la que comienza en 75.
De man bash :
-
HISTSIZEEl número de comandos para recordar en el historial de comandos.
-
HISTFILESIZEEl número máximo de líneas contenidas en el archivo de historial.