Effacer l'historique terminal

Bonjour !

Pour la xxx fois a la place de su j’ai tapé mon mot de passe
je suis sur un bureau XFCE .

J’ai essayer diverse choses je n’ai pas réussi !

Je voudrais au moins effacer la ligne ou et mon mot de passe

si vous savez comment faire
Je vous remercies a l’avance

efface tout l'historique.

efface tout l’historique.

[quote=“sidell”]history -c
efface tout l’historique.[/quote]

n’a pas l’air de fonctionner ou j’ai mal compris la manœuvre

Vu le titre j’ai supposé que tu parlais de l’historique du terminal (accessible par la touche “haut” quand on est dans un terminal) qui donne les commandes passées. Je pensais que tu voulais effacer ton mot de passe en clair qui a été enregistré comme une commande par souci de sécurité.

Si ce n’est pas cela, peux-tu préciser ton problème ?

Effectivement je me suis mal expliquer
dans l’historique du terminal ,je voulais effacer sois une ligne sois toutes
les commandes passées

car mon mot de passe root est en clair dedans

Ma commande supprime tout l’historique du terminal.

Qu’est-ce que tu entends par “historique du terminal” ?

Quand je suis sur le terminal noir

pour me connecter en root je fais su +mot de passe
au lieu de faire su , j’ai tapé mon mot de passe
donc maintenant quand je fais history pour voir les commandes que j’ai passé
mon mot de passe root est en clair dans les lignes de commande

je voudrais bien pouvoir effacer définitivement sois cette ligne
sois toute les commandes

Pour être précis elle supprime l’historique du shell, et encore seulement celui de bash à priori, ça ne marche pas sous zsh par exemple.
Pour le terminal c’est en général avec la commande clear ou reset.

Pour être précis elle supprime l’historique du shell, et encore seulement celui de bash à priori, ça ne marche pas sous zsh par exemple.
Pour le terminal c’est en général avec la commande clear ou reset.[/quote]

clair et reset pas de résultat

history -d 5 permet de supprimer la ligne 5 par exemple

Mais chez moi history -c me supprime bien tout l’historique (la commande history ne renvoie plus rien après). Clear et reset ne marche pas.

Tu peux aussi essayer :

history -c && history -w qui purge l’historique et recrée le fichier après.

il ne veut rien savoir .

Pour être précis elle supprime l’historique du shell, et encore seulement celui de bash à priori, ça ne marche pas sous zsh par exemple.
Pour le terminal c’est en général avec la commande clear ou reset.[/quote]

Pour vérifier cette assertion tu peux regarder du côté du fichier ~/.bash_history.*

Le ‘clear’ va simplement nettoyé la vue mais en aucun cas supprimé un historique.

Logiquement ton terminal appelle un shell, il te reste à savoir lequel et vérifier où est stocker l’historique pour allez supprimé la ligne directement, où alors supprimé directement la ligne après avoir vérifier à quelle ligne il est stocké.

Petit digression, il est aberrant de supprimé un historique pour simplement viré une ligne sensible mais seul l’admin système ou le responsable de la plateforme devrait être autorisé à une pareille chose, la suppression de l’historique est donc systématiquement bloqué sur les machines que j’administre au quotidien et on n’effectue une rotation afin de conserver les historiques plus longtemps (qui à parlé de flicage … imaginé un client qui vous demande de rendre des comptes et après connexion à la machine vous apercevez un historique bash complètement vide :whistle: ).

Oui, je sais bien :wink: et cette vue est l’historique du terminal, ce qui n’est pas la même chose que l’historique du shell.

Certains shells ont une option qui permet de désactiver la mise dans l’historique en préfixant la commande par un espace :whistle:

OK je crois avoir compris le fond de la question.

Pour un utilisateur de bash, l’historique utilisateur est stocké dans ~/.bash_history. Les dernières commandes saisies dans l’émulateur de terminal (xfce-terminal au moins) ne sont pas directement stockées dans ~/.bash_history, mais directement accessibles/navigables avec les touches « up » et « down ».

$ cd toto bash: cd: toto: N'est pas un dossier $ cd ~ $ echo $SHELL /bin/bash $ tail ~/.bash_history stat -c "%n : %x" /etc/* stat -c "%n : %x" /bin/* vim /etc/fstab su xx ll .bash_history echo $SHELL vim .bash_history tail ~/.bash_history xx $ history | tail -n 5 504 cd toto 505 cd ~ 506 echo $SHELL 507 tail ~/.bash_history 508 history $ tail -n 5 ~/.bash_history ll .bash_history echo $SHELL vim .bash_history tail ~/.bash_history xx

J’ai fait « cd toto » « cd ~ » et 2 autres commandes, lorsque je consulte la fin de l’historique ~/.bash_history, ces lignes n’ont pas été ajoutées. En exécutant la commande « history », les dernières lignes saisies apparaissent. Le fichier ~/.bash_history restant inchangé : le fichier ~/.bash_history n’est complété qu’à la fermeture de l’émulateur de terminal.

Le mieux dans ton cas :
— fermer l’émulateur de terminal
— éditer le fichier ~/.bash_history (fichier texte) et supprimer la ligne où il y a ton mot de passe

Du coup je me demande où est stocké l’historique temporaire de l’émulateur de terminal…

Bonsoir.
Ce problème m’arrive de temps en temps du à ma distraction.
Solution simple.
Fermer le terminal dans lequel on a frappé le mot de passe.
Ouvrir avec l’éditeur de texte de ton choix le fichier “.bash_history” qui se trouve dans ton répertoire perso ( faire éventuellement un CTRL H depuis Nautilus pour faire apparaître au préalable les fichiers .“qqchose”)
Le mot de passe en question doit apparaître à la dernière ligne, le supprimer et enregistrer.

Super , j’ai réussi a supprimer la ligne que je voulais de cette manière, !

(Ouvrir avec l’éditeur de texte de ton choix le fichier “.bash_history” qui se trouve dans ton répertoire perso
Le mot de passe en question apparaît sur une ligne , le supprimer et enregistrer. )

Merci a tous