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

Bash 并不是唯一可供選擇的 Shell。還存在數量眾多的 Shell,它們都有一些獨特的特性,例如 Zsh、Fish、Ksh 和 Xonsh。
在你的系統(tǒng)中,你可以同時安裝多個 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,都可以直接從你的發(fā)行版軟件倉庫中下載安裝。新的,相對小眾的 Shell,例如 Xonsh,可能就需要不同的安裝步驟了。你可以在它們的項目網頁上找到具體的安裝指南。
比如,你想 在 Ubuntu 上安裝 Zsh,那么可以使用以下命令:
sudo apt install zsh如何更改當前的 Shell?
假設你已經安裝了另一個 Shell,那么我們來看一看如何切換過去。
實際上,你只需要輸入新 Shell 的名稱即可。比方說,你想切換到 Zsh,那就輸入:
zsh若要退出當前的 Shell,只需輸入 exit 即可,你會回到你的默認 Shell。
如何查看默認的 Shell 是哪個?
有一個 SHELL 的環(huán)境變量,它可以告訴你當前賬戶的默認 Shell 是哪個:
echo $SHELL舉個例子,我切換到了 Zsh。此時,當前 Shell 顯示的信息是 zsh,而默認 Shell 依然顯示為 bash:

這說明更改 Shell 并不會改變默認的 Shell。也就是說,下次你再次登錄到該終端或系統(tǒng),你還會返回到舊的默認 Shell,而不是新的 Shell。
如何知道系統(tǒng)中可用的 Shell 有哪些?
你可以通過查看 /etc/shells 文件,來了解系統(tǒng)中具有哪些可用的 Shell:
cat /etc/shells下面就是我當前系統(tǒng)中所有可用的 Shell:

如何更改默認的 Shell?
/etc/shells 文件的內容顯示了所有可用 Shell 的二進制文件位置。你需要將它與 chsh 命令一起使用。
假設我想讓 Zsh 成為默認的 Shell,我可以輸入:
chsh -s /usr/bin/zsh更改后,你需要重新登入才能看到變化。
請注意,以上操作只會更改當前用戶的默認 Shell。如果你是管理員,并且想更改其他用戶的默認 Shell,那么你可以使用以下命令:
sudo chsh -s /usr/bin/zsh other_username結論
Linux 的一大特色就是,用戶可以自主選擇。你完全可以根據自己的需要進行更改。這就是另一個例子,你不必局限于發(fā)行版提供的默認 Shell 的選擇。你很歡迎自選一款 Shell,讓你的工作變得更順手。最后,祝你使用愉快 ??















 
 
 






 
 
 
 