260

我正在学习在 Rails 中进行开发,并发现了zsh. 但是,对于我的其他一些任务,我希望使用 normal bash

bash尽管它们是相同的,但我只是在某些情况下对布局感到满意。

如何来回切换,或打开zsh和关闭?

4

11 回答 11

520

你可以exec用一个新的 shell 替换你当前的 shell:

切换到bash

exec bash

切换到zsh

exec zsh

这不会影响新的终端窗口或任何东西,但它很方便。

于 2012-04-26T20:58:41.070 回答
189

您可以尝试chsh -s /bin/bash将 设置bash为默认值,或chsh -s /bin/zsh将 设置zsh为默认值。

终端需要重启才能生效。

于 2014-03-22T03:40:39.533 回答
71

我经常在 zsh 和 bash 之间切换。有一段时间,我曾经不得不在每次切换时获取我的 bash_profile。然后我发现你可以(通常)做

exec bash --login

要不就

exec bash -l
于 2014-10-24T21:46:42.220 回答
19

如果只是临时开关

您可以使用 exec 如上所述,但更多的是永久解决方案。

您可以使用chsh -s /bin/bash(切换到 bash)和chsh -s /bin/zsh(切换到 zsh)

于 2019-03-20T20:54:12.853 回答
16

对于 Bash,请尝试

chsh -s $(which bash)

对于 zsh,请尝试

chsh -s $(which zsh)
于 2017-11-15T03:31:16.020 回答
6

zsh 有一个内置命令emulate,可以通过设置适当的选项来模拟不同的 shell,尽管 csh 永远不会被完全模拟。

emulate bash
perform commands
emulate -R zsh

-R 标志将所有选项恢复为该 shell 的默认值。

参见:zsh 手册

于 2016-01-15T23:22:01.437 回答
5

在 Mac OS Catalina 中,默认的交互式 shell 是 zsh。要将 shell 从 bash 更改为 zsh:

chsh -s /bin/zsh

然后你需要输入你的 Mac 密码。退出终端并重新打开它。要检查它是否已成功更改为 ssh,请发出以下命令。

echo $SHELL

如果结果是 /bin/zsh,那么你的任务就完成了。

要将其更改回 bash,请在终端上发出以下命令。

chsh -s /bin/bash

使用 再次验证它echo $SHELL。那么结果应该是/bin/bash。

于 2020-05-16T12:28:38.613 回答
4

你可以只输入bash或者如果你总是想使用 bash:

关于“iTerm2”

  • 转到首选项 > 配置文件 > 命令
  • 从下拉列表中选择“命令”
  • 类型bash

通过关闭 iTerm 进行测试并再次打开它

于 2020-06-15T19:17:51.767 回答
2

您应该能够bash在终端中键入以切换到 bash,然后键入zsh以切换到 zsh。至少对我有用。

于 2018-07-20T02:12:46.157 回答
2

请按照以下步骤操作!

   chsh -s /bin/bash
   Restart terminal 
   check which shell is in use by echo $SHELL
   source .profile 

你和 Bash 一起回来了!!

于 2021-05-11T18:45:54.600 回答
-4

您可以使用命令“bye”轻松切换回 bash

于 2018-01-11T16:19:53.690 回答