Il y a quelques années, j'ai fait la mise à jour automatique de la distribution du 14.04 au 16.04. Pour la première fois de ma vie, j'ai pu continuer à utiliser l'ordinateur après la mise à jour automatique de la distribution. Comme d'habitude, les référentiels de logiciels sont tous mutilés, donc les mises à jour du système ne fonctionnent pas correctement, mais j'ai réussi.
Je vais cependant faire une installation propre de 18.04. Afin de pouvoir configurer mon système plus facilement après l'installation, j'ai exporté mon historique de commandes dans un fichier texte.
$ history > /.../20180915_Command_history.txt
Magnifiquement, le fichier texte résultant contient des numéros de ligne. Un peu mystérieusement, le numéro de la première ligne est 76. Après avoir regardé les premières lignes, il semble qu'il y ait probablement eu des commandes précédentes.
- Les numéros de ligne commencent-ils à 76 pour une raison quelconque ?
- Si non, y a-t-il un moyen de voir les lignes 1 à 75 ?
Réponse acceptée :
Tout d'abord, si vous avez besoin d'obtenir une sauvegarde de votre historique de ligne de commande, copiez simplement ce fichier :
~/.bash_history
N'oubliez pas que vous devez fermer tous vos terminaux ou exécuter history -a
pour ajouter toutes les commandes de ces sessions d'historique au fichier d'historique.
Sinon, y a-t-il un moyen de voir les lignes 1 à 75 ?
Chaque commande enregistrée dans votre historique est disponible sur ~/.bash_history
fichier, pour les voir tous, ouvrez un terminal et exécutez :
cat ~/.bash_history
Pour obtenir une sortie similaire à history
commande avec séquence de numérotation :
cat -n ~/.bash_history
Les numéros de ligne commencent-ils à 76 pour une raison quelconque ?
Exécutez cette commande :
grep "^HIST" .bashrc
Vous devez obtenir une sortie semblable à :
HISTSIZE=1000
HISTFILESIZE=2000
Comme je l'ai déjà dit ~/.bash_history
conserve l'historique de la ligne de commande.
-
Le
HISTFILESIZE
montrer combien de commandes doivent~/.bash_history
garde la trace, pour le mien c'est 2000. -
Et
HISTSIZE
est le nombre de commandes quehistory
commande (intégrée au shell en fait) assure le suivi.
Lorsque vous ouvrez un terminal et exécutez history
, il choisira le dernier HISTSIZE
nombre de commandes de ~/.bash_history
et vous le montre.
Si vous exécutez de nouvelles commandes, il supprimera les plus anciennes de la session et ajoutera les nouvelles à la fin de sa liste afin que le nombre de commandes corresponde à HISTSIZE
.
Je suppose qu'en posant la question, vous aviez 74 commandes de plus que HISTSIZE
dans votre .bash_history
et c'est la raison pour laquelle ça commence à 75.
De man bash
:
-
HISTSIZE
Le nombre de commandes à retenir dans l'historique des commandes.
-
HISTFILESIZE
Le nombre maximum de lignes contenues dans le fichier historique.