本快速教程展示了如何检查正在运行的 shell、系统中可用的 shell 以及如何更改 Linux 中的默认 shell。
您可能已经知道在 Linux 和其他类 Unix 系统上有几个可用的 shell。 Bash 是几乎所有 Linux 发行版的默认 shell,但还有一些其他流行的 shell 可用,例如:
- 克什
- zsh
- 鱼
- csh
- 短跑
一些外壳以更加用户友好的方式提供附加功能。 拿 鱼壳 为了 example. 它根据您之前键入的命令部分开始向您显示命令提示。 如果您不想一直记住 Linux 终端快捷方式,这将非常方便。
让我们看看你的 Linux 系统中关于 shell 的一些事情。
如何知道默认shell?
要了解 Linux 系统中为您设置的默认 shell,您可以检查 SHELL 环境变量。 通常,默认外壳是 bash 它显示如下:
echo $SHELL
/bin/bash
如何查看您当前使用的是什么外壳?
没有一种方法可以 100% 准确地告诉您正在使用哪个 shell。
你可以试试 回声 $0 这向您显示了这样的输出:
echo $0
zsh
或使用检查过程 ps -p $$ 像这样:
ps -p $$
PID TTY TIME CMD
9625 pts/0 00:00:00 zsh
如何查看 Linux 系统上所有可用的 shell?
Linux 系统上所有可用的 shell 都列在 /etc/shells 文件中。 您可以使用 cat 命令或 less 命令来查看文件的内容。
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash
/usr/bin/tmux
/usr/bin/fish
/bin/zsh
/usr/bin/zsh
如何更改外壳以使用另一个外壳?
如果你想使用不同的 shell,你只需输入它的名字,你就会登录到新的 shell。 为了 example,如果你安装了zsh并想使用它,你可以简单地使用:
zsh
您可以输入 exit 退出新的 shell 并返回到上一个。
如何永久更改 Linux 中的默认 shell?
假设您非常喜欢 Fish shell,并且希望将其用作默认 shell,以便每次打开终端或 ssh 进入系统时,您都使用它而不是默认的 bash 贝壳。
Linux 允许您使用 chsh 命令更改默认 shell。 为您自己的登录用户更改默认 shell 的最佳方法是使用 -s 选项指定 /etc/shells 文件中列出的 shell 名称。
chsh -s /usr/bin/fish
您必须退出系统才能使更改生效,否则您会认为运行 chsh 并没有更改 shell。
您是否注意到我必须指定 /etc/shells 文件中列出的完整路径? 如果我使用了 chsh -s fish,它会给我一个类似“chsh:fish is an invalid shell”的错误。
你喜欢哪个贝壳?
既然您知道如何更改 shell,您还可以阅读如何在 Linux 中更改用户。
我希望这篇小文章能帮助你改变 Linux 中的 shell。 如果您考虑过更改默认 shell,也许您使用的不是 bash 贝壳。 它是哪个壳? 为什么你比其他人更喜欢它?
请在下面的评论中分享您的观点。