]> arthur.barton.de Git - ConfigScripts.git/blobdiff - user/bash_logout
Make check for "interactive shells" more robust
[ConfigScripts.git] / user / bash_logout
index deaa629dc2c3b90692de93abd5734332e1b3ed4c..8265c8d4370f16217105c69c9429921fab2d1d28 100644 (file)
@@ -1,6 +1,6 @@
 #
 # ~/.bash_logout: executed by bash(1) on logout
-# Written 2003-2009 by Alexander Barton (alex@barton.de)
+# Written 2003-2014 by Alexander Barton (alex@barton.de)
 #
 # This script is executed by bash(1) on logout.
 #
 # individual ~/bash_logout.user file!
 #
 
-[ -e ~/.ConfigScripts.debug ] && echo " >> ~/.bash_logout ..."
+[ -e ~/.ConfigScripts.debug ] && echo " .. ~/.bash_logout ..."
 
 [ -r ~/.bash_logout.user ] && source ~/.bash_logout.user
 
-# Clean up SSH agents, if running
-[ $SSH_AGENT_PID ] && eval `ssh-agent -k`
+[ -e ~/.ConfigScripts.debug ] && echo " >> ~/.bash_logout ..."
+
+# Clean up SSH agents, if running and not using keychain(1)
+if [ $SSH_AGENT_PID ]; then
+       type -t keychain >/dev/null || eval `ssh-agent -k`
+fi
 
-# Clear console, it it is local terminal
+# Clear the console if it is a local terminal
 case `tty` in
     /dev/tty[0-9]*|/dev/ttyS[0-9]*)
        [ -x /usr/bin/clear_console ] && /usr/bin/clear_console --quiet || clear
        ;;
     *)
        if [ -z "$SUDO_USER" ]; then
-               echo "Bye, bye, $USER!"; echo
+               echo "Bye, bye, $LOGNAME!"; echo
        fi
 esac