Experiment with different shells
Situation: Currently, my default shell is set to tcsh. I have made a bunch of configuration changes in ~/.cshrc, created a lot of tcsh scripts over time. Now I want to experiment with zsh. Using "chsh" to change the default shell needs contacting admin(s). I also want to be able to fall back to tcsh in case zsh does not fit all my needs or if I am not able to figure out how to do XYZ. Had I changed the default shell using chsh, this would involve sending out more emails to admin(s) and justifying the request.
Solution: use the ~/.login script
% cat ~/.login # change the default shell to zsh # This file is executed after finishing all the startup processes exec /bin/zsh
Result: This would let me work in zsh. If for any reason, I want to revert back, the above line in ~/.login can be commented out and I will be back to using tcsh. No emails to admin(s).
Note:- This did not work for me when trying to change the default shell from ksh to bash. For that case, I added the following lines at the bottom of ~/.profile and then it worked.
setenv SHELL /bin/bash exec /bin/bash