Je veux exécuter certaines commandes mais je ne veux pas les stocker dans l'historique des commandes. Pour que personne ne puisse le rechercher dans le fichier .bash_history
.
Existe-t-il un moyen d'exécuter les commandes bash de cette façon?
Je veux exécuter certaines commandes mais je ne veux pas les stocker dans l'historique des commandes. Pour que personne ne puisse le rechercher dans le fichier .bash_history
.
Existe-t-il un moyen d'exécuter les commandes bash de cette façon?
Commencez votre commande avec un espace et il ne sera pas inclus dans l'histoire.
Sachez que cela ne nécessite la variable d'environnement $HISTCONTROL
à être mis.
Vérifiez que la commande suivante renvoie ignorespace
ou
ignoreboth
#> echo $HISTCONTROL
Pour ajouter la variable d'environnement si elle est manquante, la ligne suivante peut être
ajouté à la fête de profil. E. g. %HOME/.bashrc
export HISTCONTROL=ignorespace
Après la recherche de profil à nouveau l'espace préfixé commandes ne sont pas écrites $HISTFILE
Dans n'importe quelle session bash, définissez le fichier d'historique sur / dev / null en tapant:
export HISTFILE = / dev / null
Notez que, comme indiqué dans les commentaires, cela n’écrira aucune commande de cette session dans l’historique!
Juste ne plaisante pas avec le dur travail de votre administrateur système, s'il vous plaît;)
[UPDATE] La solution de @ Doodad est plus élégante. Désactivez simplement la variable: unset HISTFILE
(merci!)
Vous pourriez envisager d'utiliser un shell sans historique, comme peut-être
/bin/sh << END
your commands without history
END
(peut-être /bin/dash
ou /bin/sash
pourrait être plus approprié que /bin/sh
ou encore mieux utilisez l'utilitaire batch , par exemple
batch << EOB
your commands
EOB
L'historique contiendrait alors sh
ou batch
ce qui n'est pas très significatif
Il ya plusieurs façons que vous pouvez atteindre cet objectif. Ceci définit la taille du fichier de l'historique à 0:
export HISTFILESIZE=0
Ceci définit le fichier de l'historique d' /dev/null
, de manière efficace de le désactiver:
export HISTFILE=/dev/null
Pour les commandes individuelles, vous pouvez préfixer la commande avec un espace et il ne sera pas sauvegardé dans le fichier d'historique. Notez que cette fonction nécessite que vous avez l' ignorespace
de la valeur inclus dans l' $HISTCONTROL
variable d'environnement (man bash et de recherche pour l' ignorespace
pour plus de détails).
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.