GNU/Linux >> Tutoriels Linux >  >> Linux

Comment effacer l'historique de Bash sous Linux et Mac

Parfois, nous exécutons des commandes bash avec des informations sensibles. Par exemple, exécuter un script shell et transmettre des mots de passe comme arguments de ligne de commande. Dans ce cas, il est préférable d'effacer l'historique bash pour des raisons de sécurité.

Effacer l'historique de Bash sous Linux

Lorsque nous exécutons une commande dans le shell bash, elle est stockée dans le .bash_history fichier situé dans le répertoire personnel de l'utilisateur. Nous pouvons utiliser l'history commande pour imprimer toutes les commandes de ce fichier. Il existe des options pour supprimer tout l'historique ou toute commande spécifique de l'historique bash.

1. Supprimez l'historique de Bash pour supprimer toutes les commandes

Si vous souhaitez supprimer complètement l'historique bash, vous pouvez exécuter le history -c commande.

# history
  ...
  737  history
  738  vi .bash_history 
  739  cd
  740  history
# history -c
# history
    1  history
# 

2. Supprimer une commande spécifique de l'historique de Bash

Si vous souhaitez supprimer une entrée spécifique de l'historique bash, utilisez history -d offset commande. Le décalage est le numéro de ligne de la sortie de l'history commande.

[root@li1176-230 ~]# ls -1 | wc -l
3
[root@li1176-230 ~]# history
    1  history
    2  ls
    3  cd
    4  ls -1 | wc -l
    5  history
[root@li1176-230 ~]# history -d 4
[root@li1176-230 ~]# history
    1  history
    2  ls
    3  cd
    4  history
    5  history -d 4
    6  history
[root@li1176-230 ~]#

Comment effacer l'historique de Bash sous Mac OS

Si vous utilisez un shell bash simple, vous pouvez utiliser l'option -d ou -c pour supprimer l'historique bash.

bash-3.2$ history
    1  history
    2  cd
    3  ls
    4  pwd
    5  history
bash-3.2$ history -d 4
bash-3.2$ history
    1  history
    2  cd
    3  ls
    4  history
    5  history -d 4
    6  history
bash-3.2$ history -c
bash-3.2$ history
    1  history
bash-3.2$

Effacer l'historique ZSH

ZSH est très populaire ces jours-ci. Il est construit sur le shell bash et fournit de nombreuses fonctionnalités supplémentaires pour aider les développeurs. Malheureusement, les commandes d'historique ci-dessus ne fonctionneront pas pour effacer l'historique du shell ZSH. C'est parce que l'historique ZSH est enregistré dans ~/.zsh_history dossier. Si vous souhaitez supprimer une entrée, ouvrez ce fichier dans VIM ou tout autre éditeur et supprimez manuellement l'entrée du fichier et enregistrez-la.

Remarque :L'historique zsh est chargé au démarrage de la session, de sorte que les modifications apportées au fichier .zsh_history ne seront pas reflétées dans la session shell en cours. Si vous lancez un nouveau shell en ouvrant une nouvelle fenêtre ou un nouvel onglet, vous remarquerez les changements.


Linux
  1. Comment utiliser les commandes d'historique de Bash

  2. Comment personnaliser les couleurs et le contenu de Bash dans l'invite du terminal Linux

  3. Comment effacer l'historique de la ligne de commande BASH sous Linux

  4. Comment effacer une commande spécifique de l'historique Bash sous Linux

  5. Analyser l'historique de Bash sous Linux

Comment déboguer les scripts Bash sous Linux et Unix

Comment effacer la mémoire d'échange sous Linux

Comment changer l'adresse MAC sous Linux

Comment installer KernelCare et vider le cache Kernelcare sous Linux

Comment installer Mcfly sur Linux.

Comment vérifier l'historique de redémarrage du système et l'heure de démarrage sous Linux