Mac下 .bash_profile 和 .zshrc 和 .zprofile 有什么区别?
编辑在 macOS 中,.bash_profile
、.zshrc
和 .zprofile
是不同的 shell 配置文件,它们在 shell 启动时的作用有所不同。下面是这些文件的区别:
.bash_profile
用于 Bash Shell:
bash
是 macOS 之前的默认 shell,直到 macOS Catalina 版本(10.15)为止。登录 Shell 时加载:当你以登录 shell 方式启动 Bash 时(例如通过终端应用启动),
.bash_profile
会被读取和执行。常用配置:常用来设置环境变量、别名、以及其他在登录时需要运行的命令。
.zshrc
用于 Zsh Shell:
zsh
是 macOS Catalina 及其后续版本的默认 shell。交互 Shell 时加载:每次启动交互式 shell 时,
.zshrc
文件会被读取和执行。交互式 shell 是指能够接受用户输入的 shell(例如通过终端应用启动的 shell)。常用配置:通常用于设置别名、函数、shell 选项和其他需要在每次启动交互式 shell 时运行的配置。
.zprofile
用于 Zsh Shell:
zsh
的配置文件之一。登录 Shell 时加载:当你以登录 shell 方式启动 Zsh 时,
.zprofile
文件会被读取和执行。常用配置:用来设置环境变量和其他在登录时需要运行的命令。类似于
.bash_profile
,但专用于 Zsh。
总结和使用建议
登录 Shell 和交互 Shell 的区别:
登录 Shell:通常通过登录会话启动,例如通过 SSH 连接或在终端应用中启动一个新的登录会话。
交互 Shell:通过终端应用直接启动的 shell。
配置文件加载顺序:
对于 Bash:
登录 shell:
.bash_profile
→.bashrc
(如果在.bash_profile
中显式调用)。非登录 shell:
.bashrc
。
对于 Zsh:
登录 shell:
.zprofile
→.zshrc
。交互 shell:
.zshrc
。
使用建议:
如果你使用的是 Bash:
在
.bash_profile
中配置环境变量和启动脚本。在
.bashrc
中配置别名和函数,并在.bash_profile
中调用.bashrc
。
如果你使用的是 Zsh:
在
.zprofile
中配置环境变量和启动脚本。在
.zshrc
中配置别名、函数和交互 shell 设置。
- 0
- 0
-
赞助
赞赏 -
分享