Actuellement, j'ai zsh configuré de telle manière que l'historique des commandes est partagé entre toutes les sessions immédiatement.
Disons que j'ai un émulateur de terminal ouvert avec deux onglets, chacun avec une session zsh, A1 et A2. Si j'entre ls -la dans A1, puis passe à A2 et appuie sur la touche flèche vers le haut, je vois ls -la dans l'invite de commande.
Je voudrais le changer pour que les sessions ne partagent pas l'historique des commandes entre elles, bien que lorsque vous démarrez une nouvelle session, il récupère tout l'historique précédent de toutes les sessions précédentes.
Réponses:
Vous êtes probablement
INC_APPEND_HISTORY
prêt.L'
INC_APPEND_HISTORY
option, parmiman zshoptions
:L'option que vous souhaitez est
APPEND_HISTORY
:Vous pouvez lire sur ces options dans le
man zshoptions
,man zshall
ou en ligne ici .Pour les définir, dans votre
~/.zshrc
ou similaire, vous devez avoir:Sachez que, si vous utilisez oh-my-zsh par défaut, je crois,
INC_APPEND_HISTORY
est utilisé. Je ne suis pas sûr à 100% dans quel sens les choses sont chargées, mais si l'oh-my-zsh
option remplace celle que vous avez définie~/.zshrc
, vous pouvez la manipuler dans~/.oh-my-zsh/lib/history.zsh
la source
echo unsetopt INC_APPEND_HISTORY >~/.oh-my-zsh/custom/history.zsh
Pour ajouter à la réponse acceptée, si vous utilisez
oh-my-zsh
, vous avez probablement l'SHARE_HISTORY
option activée par défaut.Pour réaliser la séparation entre les shells en cours d'exécution + l'historique complet combiné dans un terminal nouvellement ouvert, vous devez commenter ou supprimer la ligne suivante:
de
~/.oh-my-zsh/lib/history.zsh
la source
~/.antigen/repos/https-COLON--SLASH--SLASH-github.com-SLASH-robbyrussell-SLASH-oh-my-zsh.git/lib/history.zsh
unsetopt share_history
votre.zshrc
afteroh-my-zsh
est chargé. Documenté ici .