Linux中國

對 Bash 感到厭倦?教你如何在 Linux 中更改默認 Shell

Bash 並不是唯一可供選擇的 Shell。還存在數量眾多的 Shell,它們都有一些獨特的特性,例如 Zsh、Fish、Ksh 和 Xonsh

在你的系統中,你可以同時安裝多個 Shell。

要想將另一個 Shell 設為默認值,你可以按照以下方式使用 chsh 命令:

chsh -s path_to_binary_of_shell

如需找到 Shell 的二進位路徑,你可以查看 /etc/shells 文件的內容。另外,你也可使用以下自動獲取所需 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/shells 文件,來了解系統中具有哪些可用的 Shell:

cat /etc/shells

下面就是我當前系統中所有可用的 Shell:

如何更改默認的 Shell?

/etc/shells 文件的內容顯示了所有可用 Shell 的二進位文件位置。你需要將它與 chsh 命令一起使用。

假設我想讓 Zsh 成為默認的 Shell,我可以輸入:

chsh -s /usr/bin/zsh

更改後,你需要重新登入才能看到變化。

請注意,以上操作只會更改當前用戶的默認 Shell。如果你是管理員,並且想更改其他用戶的默認 Shell,那麼你可以使用以下命令:

sudo chsh -s /usr/bin/zsh other_username

結論

Linux 的一大特色就是,用戶可以自主選擇。你完全可以根據自己的需要進行更改。這就是另一個例子,你不必局限於發行版提供的默認 Shell 的選擇。你很歡迎自選一款 Shell,讓你的工作變得更順手。最後,祝你使用愉快 ?

(題圖:DA/cf9b865d-2b98-4ada-88df-de1d1839aba1)

via: https://itsfoss.com/linux-change-default-shell/

作者:Abhishek Prakash 選題:lujun9972 譯者:ChatGPT 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國