Which shell I am using in mac

BashMacosShellUnixZsh

Bash Problem Overview


Default shell in my mac was bash.
I have tried to change it into ZSH by command chsh -s /bin/zsh.

Now when I am trying to check the shell type, I am getting different responses.

COMMAND-1

input : echo $SHELL
output : /bin/zsh

COMMAND-2

input : ps $o
output : 7655 ttys002 0:00.03 -bash

COMMAND-3

input : ps -p $$ | awk '$1 == PP {print $4}' PP=$$
output : -bash

I am not sure which shell I am using. Do I need to do something additional to change my shell into ZSH.

Bash Solutions


Solution 1 - Bash

Assuming you're using the standard Terminal.app and you've verified that it is indeed configured to use your default login shell, as described in NobodyNada's helpful answer:

To see what shell is currently running (which may or may not be your default shell), use:

ps -o comm= $$

To see what shell is your default shell, run:

echo $SHELL

Solution 2 - Bash

macOS's Terminal allows you to specify the shell in its preferences. By default, it is set to use your login shell, but it looks like you've overridden it to use Bash.

In the General tab of Terminal's preferences, set it to "Default login shell," to prevent your login shell from being overridden:

Terminal's settings

Also, make sure the "Run command" checkbox is not checked in the Shell tab of your profiles' settings:

Profile settings

Solution 3 - Bash

Just type in any terminal you have open:

echo $0

And the name of the terminal will appear:

enter image description here

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionshantanuView Question on Stackoverflow
Solution 1 - Bashmklement0View Answer on Stackoverflow
Solution 2 - BashNobodyNadaView Answer on Stackoverflow
Solution 3 - BashJuanma MenendezView Answer on Stackoverflow