Les réponses dans le lien que vous avez fourni depuis le site des super-utilisateurs ne doivent pas nécessairement être considérées comme des «solutions de contournement» au history
comportement par défaut de la commande. Le shell bash a un comportement par défaut sain et prêt à l'emploi.
Je recommanderais fortement de lire Comment puis-je éviter de perdre des lignes d'historique? pour une explication de ce que font ces modifications history
. En outre, il existe des préoccupations raisonnables à savoir pourquoi ce n'est pas le comportement par défaut de la history
commande.
performances - Comme vous enregistrez chaque commande de chaque fenêtre avec history -a
, le .bash_history
fichier peut devenir assez volumineux et nécessiter des ressources plus importantes pour charger le shell bash. Cela peut entraîner des temps de démarrage plus longs (pour vos sessions de terminal, pas le démarrage global du système, en soi).
organisation - (de l'article ci-dessus) "les commandes d'historique des shells interactifs simultanés (pour un utilisateur donné) seront entrelacées. Par conséquent, l'historique n'est pas une liste séquentielle garantie de commandes car elles ont été exécutées dans un seul shell."
Si vous souhaitez sécuriser davantage le shell bash et le. bash_history
fichier via l'audit, consultez cet article: Comment puis-je enregistrer l'historique ou bash "sécurisé" contre la suppression de l'historique?
À l'occasion (par exemple, un système instable ou une panne de courant), j'ai trouvé les commandes ci-dessous utiles.
Ajoutez les lignes suivantes à votre ~/.bashrc
fichier:
unset HISTFILESIZE
HISTSIZE=3000
PROMPT_COMMAND="history -a"
export HISTSIZE PROMPT_COMMAND
shopt -s histappend
Assurez-vous de source votre .bashrc
fichier en utilisant la commandesource ~/.bashrc