L'historique bash conserve un enregistrement de toutes les commandes exécutées par un utilisateur sur la ligne de commande Linux. Cela vous permet d'exécuter facilement des commandes précédemment exécutées en utilisant la "flèche vers le haut ” ou “flèche vers le bas ” pour faire défiler le fichier d'historique des commandes.
Dans cet article, nous allons vous montrer deux façons simples d'effacer votre historique de ligne de commande sur un système Linux.
La principale raison de la suppression de l'historique de la ligne de commande du terminal Linux est d'empêcher un autre utilisateur, qui pourrait utiliser le même compte.
Par exemple, si vous avez tapé une commande contenant un mot de passe en texte brut et que vous ne voulez pas qu'un autre utilisateur du système ou un attaquant voie ce mot de passe, vous devez supprimer ou effacer le fichier d'historique.
Jetez un oeil à la commande ci-dessous, ici l'utilisateur aaronkilik a tapé le mot de passe du serveur de base de données sur la ligne de commande.
$ sudo mysql -u root [email protected]!#@%$lab
Si vous regardez dans le fichier d'historique bash vers la fin, vous y verrez le mot de passe tapé ci-dessus.
$ history
Le bash_history le fichier se trouve normalement dans le répertoire personnel d'un utilisateur /home/username/.bash_history .
$ ls -l /home/aaronkilik/.bash_history
Pour supprimer une seule ligne du fichier historique, utilisez le -d
option. Par exemple, si vous souhaitez effacer une commande dans laquelle vous avez entré un mot de passe en texte clair comme dans le scénario ci-dessus, recherchez le numéro de ligne dans le fichier d'historique et exécutez cette commande.
$ history -d 2038
Pour supprimer ou effacer toutes les entrées de l'historique bash, utilisez la commande history ci-dessous avec le -c
option.
$ history -c
Alternativement, vous pouvez utiliser la commande ci-dessous pour supprimer définitivement l'historique de toutes les dernières commandes exécutées dans le fichier.
$ cat /dev/null > ~/.bash_history
Remarque :Un utilisateur normal ne peut afficher que son propre historique de commandes, mais l'utilisateur root peut afficher l'historique des commandes de tous les autres utilisateurs du système.
Vous pouvez en savoir plus sur le fichier d'historique bash et les commandes d'historique utiles ici :La puissance de la "commande d'historique" de Linux dans Bash Shell.
Rappelez-vous toujours que toutes les commandes que vous exécutez sont enregistrées dans un fichier d'historique, donc ne tapez pas de mots de passe en texte brut sur la ligne de commande. Si vous avez des questions ou des réflexions à partager avec nous, utilisez le formulaire de commentaires ci-dessous.