l'historique bash est ajouté, mais histappend est désactivé


8

Je suis sur Ubuntu 10.4 et ma coque est bash. Lorsque j'ouvre plusieurs terminaux gnome et les ferme, l'historique est correctement ajouté. Quand j'entre, shoptil dit entre autres:

histappend      off

Quelqu'un peut-il me dire où le comportement d'ajout est configuré?


1
redéfinir 'ubuntu-10.04-lts' car ubuntu-10.10 n'est pas encore sorti. tho j'entends qu'il doit être nommé quelque chose Meerkat.
Quack Quichotte

1
btw, mes coquilles bash sur Lucid montrent toutes que histappend comme sur ... pas encore de réglages ... avez-vous déjà modifié votre configuration bash ?
Quack Quichotte

@quack: Merci, je suis en avance sur mon temps, comme toujours ;-)
Ludwig Weinzierl

@quack: J'ai mis à niveau cette installation plusieurs fois, donc je ne suis pas sûr à 100%. Pour moi, peu importe si histappend est activé ou désactivé, l'historique est toujours ajouté. Ce qui m'intéresse vraiment, c'est pourquoi cela se produit? Ce serait perspicace, si vous pouviez shopt -u histappend et me dire s'il était toujours ajouté dans votre installation?
Ludwig Weinzierl

Réponses:


1

histappendest le réglage auquel je m'attendrais à contrôler cela. Puisque ce ne sont pas des shells de connexion, il ne se passera pas quelque chose dans /etc/bash.bash.logoutou ~/.bash_logout. Vérifiez si un piège est réglé en entrant trap -p. Faites aussi echo $PROMPT_COMMANDpour voir si quelque chose se passe là-bas.


echo $ PROMPT_COMMAND renvoie echo -ne "\ 033] 0; $ {USER} @ $ {HOSTNAME}: $ {PWD / $ HOME / ~} \ 007". trap -p ne renvoie rien. Je n'ai pas /etc/bash.logout et ~ / .bash_logout ne contient aucun historique de regaring.
Ludwig Weinzierl

1

bashessaie d'ajouter l'histoire autant que possible. Avec histappendon, vous garantissez toujours l’historique en annexe. S'il est désactivé, l'historique sera toujours ajouté uniquement jusqu'au nombre de commandes que vous avez Enterdans une bashsession interactive > HISTSIZE. Lorsque cela se produit, l'historique sera écrasé.

Si vous souhaitez écraser explicitement l'historique, vous pouvez utiliser history -win .bash_logoutou un trap de sortie.

J'ai posté plus en détail dans cette réponse sur le fonctionnement de bashl'ajout de l'historique.


-1

J'ai écrit un petit conseil sur la configuration de histappend ceci sur mon site mais je vais paraphraser le post ici, pour répondre à votre question, j'espère.

Vous devriez pouvoir configurer histappend pour qu'il soit «activé» à l'aide de shopt.

Pour activer l'exécution

shopt -s histappend

Pour désactiver l'exécution

shopt -u histappend

Est ce que ça aide?

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.