J'utilise bash. Pour parcourir l'historique de mes commands, j'appelle la command history
qui, je crois, appelle le programme Gnu du même nom. (Je ne sais pas s'il y a un meilleur moyen spécifique de bash).
Dans mon .bashrc j'ai actuellement une export PROMPT_COMMAND='history -a'
ligne export PROMPT_COMMAND='history -a'
pour préserver l'historique de mes sessions bash multiples que je cours.
Si je fais de l'histoire, je ne vois actuellement que 524 inputs. Est-ce configurable? Je voudrais augmenter cela à un nombre beaucoup plus grand dire 2000.
Tout d'abord, l' history
est la façon spécifique bash, rien de mieux. La command history
est un bash embedded comme vous pouvez le voir en exécutant
$ type history history is a shell builtin
Maintenant, le nombre de commands mémorisées est contrôlé par la variable HISTSIZE
. Pour le mettre en plus grand nombre, ajoutez cette ligne à votre .profile
(pour cela, il vaut mieux que .bashrc
, voir ici ):
export HISTSIZE=2000
A partir de maintenant, l' history
renverra les 2000 dernières commands que vous avez exécutées.
Oui, l' man bash
dit:
HISTSIZE – Le nombre de commands à mémoriser dans l'historique des commands
Mais il y a une variable de Readline
: history-size
Définissez le nombre maximal d'inputs d'historique enregistrées dans la list d'historique. S'il est défini sur zéro, les inputs d'historique existantes sont supprimées et aucune nouvelle input n'est enregistrée. S'il est défini sur une valeur inférieure à zéro, le nombre d'inputs d'historique n'est pas limité. Par défaut, le nombre d'inputs d'historique n'est pas limité.
Vous pouvez définir la history-size
de l' HISTSIZE=1000
avec HISTSIZE=1000
, bind 'set history-size 1000'
ou avec la ligne suivante dans votre ~/.inputrc
: set history-size 1000
Exemples :
HISTSIZE=1000 bind 'set history-size 0' echo $HISTSIZE # prints 1000 bind -v | grep history-size # prints set history-size 0 history # prints nothing bind 'set history-size 0' HISTSIZE=1000 echo $HISTSIZE # prints 1000 bind -v | grep history-size # prints set history-size 1000 history # prints 13 echo $HISTSIZE\n14 bind -v | grep history-size\n15 history
history-size
disponible depuis bash-4.0-alpha
: CHANGES
La variable HISTSIZE
détermine le nombre de commands conservées dans l'historique en cours d'exécution et HISTFILESIZE
détermine le nombre de commands de l'historique en cours d'exécution enregistrées à la sortie du shell.