Je me suis donc demandé comment exécuter ces deux lignes de code chaque fois que je ferme une instance ouverte de Terminal:
history -c
cat /dev/null > ~/.bash_history
Je suis export HISTFILE=5
au démarrage, mais je veux toujours éliminer cela lorsque j'aurai terminé.
J'ai essayé de regarder un peu dans quelques endroits et je n'ai pas eu beaucoup de chance .
Je lance Linux Mint, et je voudrais également noter ici que j'ai rencontré un problème similaire avec .bash_profile
; finalement, j'ai découvert que je devais placer tout le code de démarrage .bashrc
, alors peut-être que cela a quelque chose à voir avec cela. Voici mon .bash_logout
dossier:
#!/bin/bash
# ~/.bash_logout: executed by bash(1) when login shell exits.
#this does nothing on exit...
echo 'logout'; sleep 2s
# when leaving the console clear the screen to increase privacy
if [ "$SHLVL" = 1 ]; then
history -c
cat /dev/null > ~/.bash_history
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi
J'ai essayé de réorganiser ce script de nombreuses façons, je ne sais pas si je ne comprends pas comment fonctionne bash, et si tout cela fonctionne en premier lieu. Le fait que Xserver
j'exécute fasse bash considérer Terminal comme quelque chose qui n'est pas une déconnexion à la sortie?
Cela dit que je ne suis pas connecté, ce qui aurait du sens:
$> shopt login_shell
login_shell off
shopt login_shell
dit-on?
echo
commande au début, avant qu'elle ne fasse quoi que ce soit qui pourrait interférer avec l'echo
exécution en cours d'exécution. Une erreur pourrait entraîner la fermeture du script avant la fin.