]> arthur.barton.de Git - ConfigScripts.git/blobdiff - user/bash_logout
Use "type -t" to test for tools.
[ConfigScripts.git] / user / bash_logout
index ce8846a173bdfd95d712c03684017cbd018ef6b9..c22c8f9ba5043838197fd4fafa9b196e8baab0f7 100644 (file)
@@ -1,19 +1,33 @@
 #
 # ~/.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.
+#
+# PLEASE NOTE:
+# To make this script generic, it sources ~/bash_logout.user if it exists.
+# So you shouldn't make changes to this script, but create your own
+# individual ~/bash_logout.user file!
+#
+
+[ -e ~/.ConfigScripts.debug ] && echo " >> ~/.bash_logout ..."
 
-[ -e /tmp/ConfigDebug.$USER ] && echo " >> ~/.bash_logout ..."
+[ -r ~/.bash_logout.user ] && source ~/.bash_logout.user
 
-# clean up SSH agents
-[ $SSH_AGENT_PID ] && eval `ssh-agent -k`
+# 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 the console if it is a local terminal
 case `tty` in
-/dev/tty[0-9]*)
+    /dev/tty[0-9]*|/dev/ttyS[0-9]*)
        [ -x /usr/bin/clear_console ] && /usr/bin/clear_console --quiet || clear
        ;;
-*)
-       echo "Bye, bye, $USER!"; echo
+    *)
+       if [ -z "$SUDO_USER" ]; then
+               echo "Bye, bye, $LOGNAME!"; echo
+       fi
 esac
 
 # -eof-