【Mac】配置文件

1、针对Bash Shell的配置文件

  • ~/.bash_profile
    • 读取时机:当用户登录到 Bash shell 时读取。这是 Bash shell 特有的配置文件。
    • 作用范围:用户级配置,仅适用于当前用户的 Bash shell 会话。
    • 内容:通常用于设置环境变量、路径、别名和其他用户级配置。~/.bash_profile 还可以用来调用其他配置文件,如 ~/.bashrc。
  • ~/.bashrc
    • 读取时机:每次打开新的 Bash shell 会话时(无论是通过终端还是其他方式)都会读取。
    • 作用范围:用户级配置,仅适用于当前用户的 Bash shell 会话。
    • 内容:通常用于设置别名、函数、主题等个性化配置。与 ~/.bash_profile 不同,~/.bashrc 更侧重于交互式会话的个性化设置。

2、针对Zsh Shell的配置文件

  • ~/.zprofile
    • 读取时机:~/.zprofile 通常在用户登录到 Zsh shell 时被读取。这意味着,当用户通过 SSH 登录到系统,或者使用终端模拟器以登录 shell 的方式启动 Zsh 时,这个文件会被执行。
    • 作用范围:用户级配置,仅对当前用户有效。
    • 内容:通常用于设置环境变量、路径和其他全局配置,这些配置只需要在用户登录时执行一次。由于 ~/.zprofile 是在登录时读取的,因此它适合放置那些只需要在会话开始时执行一次的命令或设置。
  • ~/.zshrc
    • 读取时机:~/.zshrc 每次打开新的 Zsh 会话时都会被读取,无论是通过终端直接打开的交互式 shell,还是通过其他方式启动的非登录 shell。
    • 作用范围:用户级配置,仅对当前用户有效。
    • 内容:通常用于设置别名、函数、主题、环境变量以及其他个性化配置。由于 ~/.zshrc 在每次新的 shell 会话时都会被读取,因此它适合放置那些每次打开终端时都需要生效的设置。

3、系统级配置文件

  • /etc/profile:全局共有配置,为系统的每个用户设置环境信息和启动程序。其配置对所有登录的用户都有效,但由于它影响所有用户,因此一般不建议轻易修改。

  • /etc/paths:全局共有配置,任何用户登录时都会读取该文件。它用于设置环境变量,但不需要使用export命令。文件内容中的每一行路径都会被添加到环境变量中。系统启动时会加载该文件,修改它需要Root权限。

  • /etc/bashrc:系统级配置,为每个运行bash shell的用户执行该文件。当bash shell打开时,该文件被执行,其配置对所有使用bash的用户打开的每个bash都有效。

4、总结

Mac系统环境变量的加载顺序:a -> f

bash 复制代码
a. /etc/profile 
b. /etc/paths  
c. ~/.bash_profile 	
d. ~/.bash_login 	
e. ~/.profile 		
f. ~/.bashrc 

自macOS Catalina(10.15)以来,Zsh已成为macOS的默认shell。因此,大多数用户会在.zshrc文件中进行配置,以确保每次打开终端时都能应用个性化设置。然而,仍有一些用户可能在使用Bash,特别是在某些特定环境中(如脚本编写),在这种情况下,他们会在.bashrc文件中进行配置。

请注意,配置文件的加载顺序和优先级可能因Mac OS版本和用户的具体设置而有所不同。在进行配置修改时,建议先备份原始文件,并仔细了解每个配置文件的作用和加载顺序,以避免不必要的错误和冲突。

相关推荐
kk_net88992 小时前
FSNotes:macOS 和 iOS 上的开源笔记管理器
笔记·其他·macos·ios
zhangfeng113311 小时前
com.apple.quarantine 并不是乱码,而是 macOS Gatekeeper 给下载文件自动打上的“隔离属性
macos·策略模式
甘晴void16 小时前
我给 Magpie 做了个 macOS 桌宠:106 段动画,请求一多就亮灯
macos·electron·开源·deepseek·桌面宠物·magpie
donecoding16 小时前
Apple 芯片 Mac 的终端为什么还在跑 Intel?从 tmux 查起
macos
DevLoom_21 小时前
macOS 27 升级后 Time Capsule 无法备份?AFP 协议废弃后的完整解决方案与备份迁移教程
macos·时间机器·macos27·macos 27备份·macos实用技巧
金海星科技1 天前
船舶交通管理中心的人工智能值守:从“听、说、读、写“看人机协同
人工智能·macos·xcode
小相会自律1 天前
全平台远程控制软件推荐2026:Win/Mac/Linux/手机/鸿蒙互通哪款好
linux·macos·智能手机·todesk·teamviewer·向日葵
IsITGirl1 天前
VMware Fusion(Mac)Windows ARM 虚拟机 NAT (vmnet8) 报错解决记录
windows·macos·.net·桥接模式
全栈探索者2 天前
从素材到成片:ffmpeg 拼接、转码与字幕,一条流水线交付
macos·ffmpeg·aigc·comfyui·视频剪辑
向阳是我2 天前
Mac 命令行获取 APK 公钥和证书 MD5 指纹
macos