已关闭此问题为not about programming or software development。它目前不接受回答。
这个问题似乎不是关于a specific programming problem, a software algorithm, or software tools primarily used by programmers的。如果你认为这个问题与another Stack Exchange site的主题有关,你可以留下评论,解释在哪里可以回答这个问题。
上个月关门了。
Improve this question
我在MacOS上使用bash
shell感觉很舒服。但 Catalina 把它换成了zsh
。
为什么?我能换回来吗?
如果是,如何?
这样做有意义吗?有问题吗?
1条答案
按热度按时间ddrv8njm1#
TLDR
brew install bash
/opt/homebrew/bin/bash --version
(如果不同,请相应地调整以下内容)。sudo nano /etc/shells
并在列表顶部插入/opt/homebrew/bin/bash
。这样下一条指令就会成功。chsh -s /opt/homebrew/bin/bash
echo $SHELL
确认正在运行的shell确实是/opt/homebrew/bin/bashnano ~/.bash_profile
(如果它为空,它将创建它)并添加行:深潜
MacOS附带使用LGPL v2许可证的最新BASH:
您可以安装最新的
bash
(例如,(homebrew
)这里发生了什么事?在3.2.x之后,bash许可证从LGPL v2更改为v3。苹果拒绝转变为符合LGPL v3,而是将MacOS附带的
bash
版本修复为3.2.x。最终它变得尴尬,(2019/ Catalina )他们切换到zsh
(MIT许可证)。现在我们需要使用
chsh
将默认登录shell更改为新的bash,但首先我们需要定位可执行文件。注:恼人的是,
..所以我们暂时不要去那里。
这里是路径homebrew需要。
让我们将这些路径添加到当前shell会话中并定位可执行文件:
现在我们将使用
chsh
将默认登录shell更改为/opt/homebrew/bin/bash。chsh
只接受/etc/shells
中列出的shell,因此编辑该文件并插入行(例如:sudo nano /etc/shells
。现在您应该看到:
现在
chsh
可以工作了:关闭并重新打开您的终端程序。现在:
......确认它有效。
然而,还有一个问题:
这是因为我们前面列出的那些自制PATH没有添加到我们的shell会话中。
要修复,请编辑(如有必要,请创建)
~/.bash_profile
并添加以下行:现在重新启动终端程序,
echo $SHELL
和which bash
现在应该对齐。更重要的是,您的shell现在可以看到自制程序的位置。