厌倦了Bash?在Linux中更改默认Shell

尝试了另一个shell,并且非常喜欢它,以至于你想通过将它作为默认shell来一直使用它?以下是如何在Linux中更改默认shell的方法。

Bash并不是唯一的Shell。还有许多其他具有略微不同特征集的Shell可用。几个例子是Zsh,Fish,Ksh是Xonsh。

在任何给定的时间,您的系统上都可以安装多个shell。

如果您想选择其他shell作为默认shell,可以按以下方式使用chsh命令:

chsh -s path_to_binary_of_shell

您可以通过显示/etc/shell文件的内容来获取shell的二进制文件的路径。您也可以使用下面的命令来自动获取所需shell的二进制文件,使用该命令:

chsh-s$(which new_shell)

让我们在这里更详细地了解有关了解和更改shell的内容。

如何知道您当前使用的是哪个shell?

有几种方法可以确定目前使用的是哪种shell,尽管这些方法的准确性可能会受到专家的质疑。

最简单和最常见的方法是使用:

echo $0

$0是一个特殊的shell变量,用于获取shell或shell脚本的名称(如果您在脚本中使用它)。

另一种方法是使用以下方法检查流程:

ps-p$$

这里,$$为您提供当前进程/shell的进程ID。

如何安装另一个shell?

就像其他软件包一样。大多数流行的shell,如Fish和Zsh,都可以从您的发行版的存储库中获得,并且可以轻松安装。较新的、鲜为人知的shell,如Xonsh,可能有不同的安装说明。你可以从项目的网页上获得。

假设你想在Ubuntu上安装Zsh。使用:

sudo apt install zsh

如何更改当前shell?

现在您已经安装了另一个shell,让我们看看如何更改它。

很可能,您只需要输入shell的名称。比如说,你必须切换到Zsh:

zsh

要退出当前shell,请输入exit,然后返回到默认shell。

如何知道默认shell?

有一个SHELL环境变量告诉您当前用户的默认shell:

echo $SHELL

让我们举一个我切换到Zsh的例子。当前shell显示给zsh,默认shell保持bash:

这告诉您更改shell不会更改默认shell。这意味着下次登录终端/系统时,您将返回到旧的默认shell,而不是新的shell。

如何了解系统中可用的shell?

您可以通过查看/etc/shell的内容来查看系统中可用的shell:

cat /etc/shells

以下是我的系统中目前可用的shell:

如何更改默认shell?

/etc/shell文件的内容显示了可用shell的二进制文件的位置。您必须将其与chsh命令一起使用。

比方说,我想让Zsh shell成为默认值。以下是我使用的内容:

chsh -s /usr/bin/zsh

注销并再次登录以查看更改。

请注意,这将更改当前用户的默认shell。如果您是管理员,并且希望更改其他用户的默认shell,请使用:

sudo chsh -s/usr/bin/zsh other_username

结论

Linux就是选择。你可以随心所欲地做出改变。这是另一个例子,其中您不受您的发行版提供的默认shell的选择的约束。您可以将shell更改为您喜欢的shell。

【原文链接】https://itsfoss.com/linux-change-default-shell/

【作者】Abhishek Prakash

点赞富三代,分享美一生 ^|^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值