web-dev-qa-db-fra.com

Augmenter la durée de l'historique de recherche inversée

Est-il possible d’augmenter l’historique par défaut reverse-i-search (CTRL+R) garde? Dans Ubuntu 16.04, il ne semble pas avoir une "mémoire" très longue, parfois même les commandes d'hier ont déjà disparu de son historique, c'est-à-dire. n'apparaîtra pas même après avoir parcouru toutes les entrées avec des répétitions CTRL+R.

J'utilise Terminator comme console.

1
Juha Untinen

La taille de l'historique est spécifiée avec les deux variables HISTSIZE (historique d'une session de terminal unique, enregistrée dans la RAM) et HISTFILESIZE (taille du fichier historique, généralement ~/.bash_history). Cette taille est définie en nombre de lignes dans votre fichier ~/.bashrc, par exemple:

HISTSIZE=1000
HISTFILESIZE=10000

Cela enregistre 1000 lignes (= commandes) par session de terminal et 10000 dans le fichier d’historique.

La recherche inversée effectue une recherche dans l'historique de la session en cours ainsi que dans le fichier d'historique, mais ne peut pas inclure les commandes d'autres sessions encore ouvertes.

Lectures complémentaires:

1
dessert

C’est très simple, il suffit de changer vos variables HISTSIZE et HISTFILESIZE en vous .bashrc

HISTSIZE=-1
HISTFILESIZE=-1

Dans les versions 4.3 et ultérieures, vous pouvez également utiliser HISTSIZE = -1 HISTFILESIZE = -1 pour le définir comme illimité.

Considérez que HISTSIZE est le nombre de lignes ou de commandes stockées en mémoire dans une liste d’historique pendant que votre session bash est en cours.

HISTFILESIZE est le nombre de lignes ou de commandes qui (a) sont autorisées dans le fichier historique au démarrage d'une session et (b) sont stockées dans le fichier historique à la fin de votre session bash pour une utilisation ultérieure sessions.

Jetez un coup d'oeil à ceci lien

Cordialement,

3
Alvaro Niño

Il n'y a pas de limite time mais plutôt une limite line ou size sur l'historique de la ligne de commande.

Vous pouvez modifier cela dans votre ~/.bashrc

export HISTSIZE=500000
export HISTFILESIZE=500000

Cela signifierait une "mémoire" de 500 000 lignes dans votre historique, à la fois actuellement (HISTSIZE) et écrite dans votre fichier historique (HISTFILESIZE).

Cependant, gardez à l'esprit que le fichier n'est écrit que lorsque vous exit un terminal.

Vous pouvez reverse-i-search vos commandes dans le même terminal, avant que l'historique ne soit écrit dans le fichier d'historique, mais vous ne pouvez pas trouver vos commandes dans les nouveaux terminaux sans avoir quitté le premier!

2
Robert Riedl