如何找出 Linux 中正在使用的 shell
Linux 外壳
有几种 Linux shell,每种都有自己的特点。流行 shell 的例子有 Bash(许多发行版的默认 shell)和 ZSH(Kali Linux 的默认 shell,它有很多粉丝)。
shell 信息包含在 $SHELL 环境变量中,要查看其值并找出正在使用的 shell,请运行以下命令:
echo $SHELL

看看究竟会显示什么:
- /bin/bash - 意味着你有 Bash
- /usr/bin/zsh - 意味着你有 ZSH

如何找出实际使用的 Linux shell
但是使用 shell 真的那么简单吗?
看看下面的屏幕截图并尝试猜测哪个 shell 将处理后续命令?

屏幕截图清楚地显示命令打印“/usr/bin/zsh”,因此我们可以说它正在使用 ZSH shell。
但这是错误的答案。
是的,这个系统上的默认 shell 是 ZSH,但就在命令之上
bash
即使修饰或命令行提示符没有改变,Bash 现在也会处理您输入的命令。
如果您运行命令,这很容易证明
help
然后 Bash 将向您展示其命令的快速参考。 ZSH 将显示一条消息,指出找不到该命令:

$SHELL 变量实际显示什么?显然,这只是该系统上的默认 shell,没有考虑用户可以启动另一个 shell 的事实。但是,在大多数情况下,输出 $SHELL 变量的值将回答该系统正在使用哪个 shell 的问题。
要验证您使用的是 Bash,您可以运行以下命令:
help
“揭示”Bash 的另一种方法是查看 Ctrl+x Ctrl+v 击键的响应方式。作为响应,Bash 将打印类似于以下内容的一行:
GNU bash, версия 5.1.4(1)-release (x86_64-pc-linux-gnu)
相关:如何在 Linux 中更改登录 shell。 chsh指令