Si vous voulez le supprimer immédiatement à partir du même terminal, vous devez d'abord ajouter ce qui suit à votre fichier ~/.bashrc.
PROMPT_COMMAND='history -a'
et redémarrer votre terminal.
Vous pouvez l'ajouter n'importe où dans le fichier .bashrc. Je l'ai ajouté comme ci-dessous avec d'autres choses liées à l'histoire.
Habituellement, au cours d'une session bash, les commandes exécutées ne sont pas écrites dans le fichier .bash_history avant la fin de la session. PROMPT_COMMAND='history -a'
entre la commande à cet instant précis dans .bash_history.
Maintenant, chaque fois que vous faites une erreur ou une faute dans une commande et que vous voulez la supprimer, il suffit d'exécuter ce qui suit
sed -i '$d' ~/.bash_history
et tada il serait supprimé.
Pour simplifier, vous pouvez l'aliaser en quelque chose de plus simple et l'utiliser comme suit
alias rh ='sed -i '\''$d'\'' ~/.bash_history'
Donc l'exécution rh
supprimera la dernière commande exécutée de l'historique.
Ce qui précède est un aliasing temporaire qui ne dure que le temps d'une session.
alias rh = 'sed -i '\''$d'\'' ~/.bash_history'
dans le fichier .bashrc
NOTE
Il ne doit pas y avoir d'espace de part et d'autre des =
Si vous ne voulez pas d'alias, vous pouvez aussi faire ce qui suit
Faire un nom de commade rh
et le placer dans /bin
répertoire :
-
Ouvrez un fichier en disant rh
et collez le code suivant, enregistrez et fermez :
sed -i '$d' ~/.bash_history
-
Faire rh
et le placer dans /bin
répertoire :
chmod +x rh
sudo cp rh /bin
-
Maintenant, utilisez rh
pour supprimer une commande récente de l'historique.