我在mac中使用哪个shell

sha*_*anu 8 unix macos bash shell zsh

我的mac中的默认shell是bash.
我试图通过命令将其更改为ZSH chsh -s /bin/zsh.

现在,当我尝试检查shell类型时,我得到了不同的响应.

COMMAND-1

输入:echo $SHELL
输出:/bin/zsh

COMMAND-2

输入:ps $o
输出:7655 ttys002 0:00.03 -bash

COMMAND-3

输入:ps -p $$ | awk '$1 == PP {print $4}' PP=$$
输出:-bash

我不确定我使用的是哪个shell.我是否需要做一些额外的事情来将我的shell更改为ZSH.

mkl*_*nt0 9

假设您正在使用该标准,Terminal.app并且您已经验证它确实已配置为使用您的默认登录shell,如NobodyNada的有用答案中所述:

要查看当前正在运行的 shell (可能是也可能不是您的默认shell),请使用:

ps -o comm= $$
Run Code Online (Sandbox Code Playgroud)

要查看哪个shell是您的默认 shell,请运行:

echo "$SHELL"
Run Code Online (Sandbox Code Playgroud)


Jua*_*dez 9

只需输入您打开的任何终端:

echo $0
Run Code Online (Sandbox Code Playgroud)

终端的名称将会出现:

在此输入图像描述


Nob*_*ica 8

macOS的终端允许您在其首选项中指定shell.默认情况下,它设置为使用您的登录shell,但看起来您已覆盖它以使用Bash.

在终端首选项的常规选项卡中,将其设置为"默认登录shell",以防止您的登录shell被覆盖:

终端的设置

此外,请确保未在配置文件设置的"Shell"选项卡中选中"运行命令"复选框:

档案设置