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
HISTFILESIZE
muestra cuántos comandos debe~/.bash_history
sigue la pista, para el mío es 2000. -
Y
HISTSIZE
es el número de comandos quehistory
El 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
:
-
HISTSIZE
El número de comandos para recordar en el historial de comandos.
-
HISTFILESIZE
El número máximo de líneas contenidas en el archivo de historial.