J'ai toujours plus d'un terminal ouvert. De deux à dix, faisant divers bric et de broc. Maintenant, disons que je redémarre et ouvre un autre ensemble de terminaux. Certains se souviennent de certaines choses, d'autres oublient.
Je veux un historique qui :
- Se souvient de tout depuis chaque terminal
- Est instantanément accessible depuis chaque terminal (par exemple, si je
ls
dans l'un, passez à un autre terminal déjà en cours d'exécution, puis appuyez sur haut,ls
s'affiche) - N'oublie pas la commande s'il y a des espaces devant la commande.
Que puis-je faire pour que bash fonctionne plus comme ça ?
Réponse acceptée :
Ajoutez ce qui suit à votre ~/.bashrc
:
# Avoid duplicates
HISTCONTROL=ignoredups:erasedups
# When the shell exits, append to the history file instead of overwriting it
shopt -s histappend
# After each command, append to the history file and reread it
PROMPT_COMMAND="${PROMPT_COMMAND:+$PROMPT_COMMAND$'n'}history -a; history -c; history -r"