MacOS 的 zsh 和 bash 切换
zsh、bash 都是 shell,zsh 比 bash 更加强大,功能也更加完善,此篇文章说明 zsh 和 bash 之间的切换。Linux/Unix 产品一般默认的都是使用 bash。
mac终端默认zsh
zsh:是mac默认的终端,一定需要确认你每次打开的是哪个终端,再去配置对应的文件
zsh对应的配置文件
~/.zprofile: 在用户主目录下,以加载配置文件相关的配置
~/.zshrc:文件包含一些用于配置新打开的shell的命令。这与用户登录时执行的.zprofile文件不同
mac终端bash
bash:不是默认的,也是平时比较常用的终端,
bash对应的配置文件
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
执行顺序:最开始全局加载 /etc/.profile 文件,再执行 ~/.profile 或者 ~/.bash_profile 文件,之后加载 ~/.bashrc文件
1. 从 bash 切换到 zsh
chsh -s /bin/zsh
2. 从 zsh 切换回 bash
chsh -s /bin/bash
3. zsh和bash的环境变量
bash 的环境变量是.bash_profile文件。
zsh 的环境变量是.zshrc文件。
4. 问题
提示chsh: no changes made问题
提示chsh:no changes made 解决办法:终端输入:
dscl . -read /Users/$USER/ UserShell
exec su - $USER
然后在输入密码即可。完美解决