When I put my bbs_login shell script as the last line in ./bashrc, the script behaves as designed. The user is prompted for an option and the script waits for a user response. The only problem is that the user can't logout of the account from within the script. The 'exit' command merely returns the user to the login shell. To get around that problem I made the bbs_login script a login shell by putting "exec bbs_login" as the last line in the users ./profile script. The menu displays ok but the read commands don't work. The menu constantly redisplays as if the read mychoice option were being preempted by a background process. What can I do to make it behave as a login shell like it behaves as a called script? Here is the script: ******************************* #set TMOUT=600 PATH=$PATH:":." fext=".001" clearscr(){ clear; echo "Hello, $LOGNAME, Select your choice: "; echo "1) Change Password"; echo "2) Download file using a 3 digit Julian day. Today:$(date +%j)"; echo "3) Quit"; } clearscr while true do echo -n "Choice? " read mychoice case $mychoice in 1) echo "Passwords must be 8 or less letters and/or numbers, NO spaces" passwd $LOGNAME echo "$LOGNAME did a Password change" >> /tmp/bbs_users_log ;; 2) badnames="Bad Julian Dates" ls *.001 echo "Enter 1 or more 3 digit Julian Days, separated by a space (001 to 365):" read juliandays for julian in $juliandays do fname="$LOGNAME$julian$fext" if [ -f $fname ] && [ -n $fname ] then echo "Sending $fname" # sz --zmodem --ascii $fname echo "$LOGNAME Downloaded file:$fname">> /tmp/bbs_users_log else badnames=$badnames" "$julian fi done echo "$LOGNAME $badnames">> /tmp/bbs_users_log mychoice="" ;; 3) exit ;; *) echo -n "$mychoice is NOT a choice" sleep 2 esac clearscr done ***************************** JLK -- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq