What is default shell for terminal?
Let's say, I opened a terminal and entered / executed some shell commands.
But I didn't invoke explicitly Bash or any other shell.
What shell was used by default?
Solution 1:
The one specified on your line in /etc/passwd
(it is a :
separated line and the shell is the final one).
For example mine:
chris:x:1000:1000:Chris,,,:/home/chris:/bin/bash
Here it is /bin/bash
(the Ubuntu default)
You can also use chsh
:
$ chsh
Password:
Changing the login shell for chris
Enter the new value, or press ENTER for the default
Login Shell [/bin/bash]:
This is telling me my shell is /bin/bash
and letting me change it.
Finally, echo $SHELL
will do the same:
$ echo $SHELL
/bin/bash
Solution 2:
typing the following will display what shell the terminal opened with:
echo $SHELL
However, to find out what shell you are currently in (you may have changed it) type
ps -p $$
e.g. you will see that the shell is bash in the example output
PID TTY TIME CMD
3500 pts/0 00:00:01 bash
Another method is to use
echo $0
this will simply return the name of the current shell.