Cae*_*ium 62
在您的行中指定的那个/etc/passwd
(它是一个:
单独的行,shell 是最后一个)。
例如我的:
chris:x:1000:1000:Chris,,,:/home/chris:/bin/bash
Run Code Online (Sandbox Code Playgroud)
在这里/bin/bash
(Ubuntu默认)
您还可以使用chsh
:
$ chsh
Password:
Changing the login shell for chris
Enter the new value, or press ENTER for the default
Login Shell [/bin/bash]:
Run Code Online (Sandbox Code Playgroud)
这告诉我我的外壳是/bin/bash
,让我改变它。
最后,echo $SHELL
将做同样的事情:
$ echo $SHELL
/bin/bash
Run Code Online (Sandbox Code Playgroud)
fos*_*dom 22
键入以下内容将显示终端打开的外壳:
echo $SHELL
Run Code Online (Sandbox Code Playgroud)
但是,要找出您当前所在的外壳程序(您可能已更改它),请键入
ps -p $$
Run Code Online (Sandbox Code Playgroud)
例如,您将在示例输出中看到 shell 是bash
PID TTY TIME CMD
3500 pts/0 00:00:01 bash
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用
echo $0
Run Code Online (Sandbox Code Playgroud)
这将简单地返回当前 shell 的名称。
Ano*_*ous 19
GNU Bash 是 Ubuntu 终端中默认使用的 shell。但是,当在系统启动时执行脚本时,会使用破折号,因为 /bin/sh 是破折号。
这是在 $SHELL 环境变量中定义的。您可以通过echo $SHELL
在终端中键入来检查。
默认情况下它是 bash:
env | grep ^SHELL=
Run Code Online (Sandbox Code Playgroud)
大多数情况下会产生
SHELL=/bin/bash
Run Code Online (Sandbox Code Playgroud)