Je mets export HISTSIZE=99999999999999
mais est-ce la meilleure façon? Je ne sais pas si un débordement pourrait se produire. Je recherche un moyen testé et fiable de supprimer les limites de l'historique des commandes.
Je mets export HISTSIZE=99999999999999
mais est-ce la meilleure façon? Je ne sais pas si un débordement pourrait se produire. Je recherche un moyen testé et fiable de supprimer les limites de l'historique des commandes.
Réponses:
en effet, il n’est pas (bien) documenté et je suppose que 99% des utilisateurs de bash sur ce système planifié définissent HISTSIZE sur un très grand nombre.
Dans GNU bash, l’histoire est gérée par la puissante bibliothèque readline. La bibliothèque a la possibilité de limiter ou non la taille de l'historique ("stifle" dans le jargon readline) et bash définit simplement l'historique readline sur étouffé / non étouffé. Si vous examinez par exemple la version 4.2 de GNU bash, fichier variables.c, ligne 4443, fonction void sv_histsize (char *), vous trouverez ce commentaire (et l’ensemble suffoquant dans la fonction qui suit):
/ * Que faire après le changement des variables HISTSIZE ou HISTFILESIZE.
S'il existe une valeur pour cet HISTSIZE (et qu'il est numérique), étouffez l'historique. Sinon, s'il n'y a pas de valeur pour cette variable,
désélectionnez l'historique. Si name est HISTFILESIZE et que sa valeur est
numérique, tronquez le fichier d'historique pour qu'il ne contienne pas plus de
lignes. * /
Donc, cela devrait faire l'affaire:
export HISTSIZE=""
Et aussi ceci (si vous vous sentez provocant):
export HISTSIZE="GOTCHA"
J'espère que cela t'aides.