IPython: comment effacer l'histoire d'IPython de manière sélective et sécurisée?
j'ai été d'apprendre à utiliser le paramiko
le paquet pour découvrir que tout ce que je stockés les mots de passe en texte brut dans IPython %hist
. Pas si bon.
je dois donc me débarrasser de certaines parties de ce qui est stocké dans %hist
. Disant cela, je ne veux pas essuyer l' toute l'histoire. - Seulement les parties où j'ai été assez négligent pour taper password =
ou similaire choisi terme.
Merci
Commentaires je n'ai pas besoin:
%clear
autorise seulement la session. Il n'essuyez pas l'histoire.- Oui. Je n'utiliserai que xSA_keys à partir de maintenant.
5 réponses
l'Histoire est stocker sur $(ipython locate)/profile_default/history.sqlite
par défaut.
Vous pouvez supprimer le fichier ou n'importe quelle opération que vous voulez (secure erase, etc..).
C'est un fichier sqlite donc vous pouvez le charger avec n'importe quel programme sqlite et faire des requêtes dessus.
Case $(ipython locate)/profile_default/
et $(ipython locate)/profile_xxx
que vous n'avez pas d'autres fichiers d'historique. $(ipython locate)
généralement ~/.ipython/
mais peut varier:
ls $(ipython locate)/profile_*/*.sqlite
Une solution serait:
sqlite ~/.ipython/profile_default/history.sqlite
delete from history where source like '%password =%';
Combinaison @Ovidiu Ghinetréponse@Mattaccepté de répondre à:
sqlite $(ipython locate)/profile_*/*.sqlite || sqlite3 $(ipython locate)/profile_*/*.sqlite
puis à partir de la console sqlite:
delete from history where source like '%password%';
select * from history; /* confirm that no passwords left */
.quit /* forgot how to exit sqlite console? ;) */
Si vous voulez complètement depuis le début, il suffit d'aller et de supprimer le fichier suivant manuellement(Il a travaillé pour moi)
/home/utilisateur/.ipython/profil_default / history.sqlite
Je n'ai pas pu trouver le moyen d'effacer l'histoire d'IPython de manière sélective, mais j'ai découvert comment effacer des données par func intégré, Non-sqlite way:
% #on efface l'historique de sortie
au fait, vous pouvez aussi clear dans l'histoire par %clear dans