tech84,
From the previous posts, I'm assuming that you now understand how to start another shell from your current shell. A few additional comments regarding this:
- in order for a different shell to be used each time you log in, it needs to be defined in the passwd file or in your current shell's initialization file
- you can use the "ps" command (list your processes) to see what shell you are running
- it may help you understand what is going on if you perform the following sequence of commands:
1) login to a system
2) run "ps" to see what shell you are currently running
3) start another shell from the current shell (use a different shell than the one you are currently running)
4) run "ps" again to see what shells you are running
5) type "exit" to leave the new shell you started
6) run "ps" again to see what you are left with
Regarding your question about why someone would want to start a second shell...
If you have a shell script (a collection of multiple commands in a single file) that contains an exit statement, it is common to run the shell script in a second shell so that you will not be logged out when the shell comes to the exit statement.
It is also common to run the shell script in what's call the background so that you can continue working in the foreground. This is especially useful when you are running a script that may take a long time to complete (e.g. extracting data from a database).
Hope this helps some!
Biker
Systems/Network Administrator
LiveFire Labs - Hands-On Technical e-Learning