Qshell Logout Script
November 3, 2004 Hey, Ted
I know about the special scripts that run automatically when I begin a Qshell session. Is there a way to make Qshell run a script when I end a session?
Qshell does not support an automatic logout script, but you can tell Qshell to run a script when the session ends by trapping the EXIT pseudo signal.
Suppose you want to keep a log of your Qshell sessions. You might create an IFS file to contain the log information. The following command creates a file called qsh session history.
touch 'qsh session history'
Using the text editor of your choice, add the following lines to the .profile file.
echo "$LOGNAME logged in $(date)" >> 'qsh session history' trap '. $HOME/logoff.qsh' EXIT
The echo command writes your user name and current date and time to the qsh session history file. The trap command tells Qshell to execute the logoff.qsh script, which is in your home directory, in the current process when the session ends. By the way, you can use the number 0 (zero) instead of the word EXIT if you prefer.
After saving the changes to your .profile file, key the following command into a file called logoff.qsh in your home directory.
echo "$LOGNAME logged out $(date)" >> 'qsh session history'
This command writes the date and time when you end a Qshell session to the qsh session history file. The result is a file that looks like this:
THOLT logged in Wed Nov 3 13:07:20 2004 THOLT logged out Wed Nov 3 13:15:18 2004 THOLT logged in Wed Nov 3 16:27:26 2004
Click here to contact Ted Holt by e-mail.