macos常见且应该避免被覆盖的系统环境变量(避免用 USERNAME 作为你的自定义变量名)

文章目录

macos避免用 USERNAME 作为你的自定义变量名

问题:

你执行了:export USERNAME="admin"

然后执行:echo ${USERNAME}

输出却是:xxx

问题分析:

USERNAME 在 macOS(以及许多类 Unix 系统)是一个被系统预设的特殊环境变量。macOS 上 USERNAME 一般会自动指向当前登录用户(如 xxx),设定新的 USERNAME 会被系统自动覆盖或失效。

macos常见且应该避免被覆盖的系统环境变量

在 macOS(以及大部分 Unix/Linux 系统)里,有一些环境变量是系统或 shell 预定义和保留的。使用这些名字作为自己脚本/临时变量容易引发冲突或意外现象。

以下是一些常见且应该避免被覆盖的系统环境变量:

变量名 含义
HOME 用户主目录(如 /Users/yourname
USER 当前用户名(有时是登录用户)
USERNAME (部分 shell/系统)当前用户名
SHELL 当前 shell 路径,如 /bin/zsh
PATH 可执行文件查找路径(用 : 分隔的各目录)
PWD 当前工作目录
OLDPWD 上一次工作目录
LANG 当前语言和地区设置
TERM 终端类型
LOGNAME 登录用户名
SSH_* SSH 相关(如 SSH_CLIENTSSH_TTY等)
TMPDIR 临时文件目录路径
HOME 主目录路径
EDITOR 默认文本编辑器
MAIL 邮箱路径
相关推荐
寒水馨9 小时前
macOS下载、安装openclaw-v2026.7.1(附安装包OpenClaw-2026.7.1.dmg)
macos·大模型·github·开源软件·ai助手·openclaw·gpt-5.6
白玉cfc12 小时前
【iOS】MRC和ARC
macos·ios·cocoa
飞雪金灵13 小时前
mac电脑 Maven下载安装和配置环境变量
macos·maven·maven下载安装·mac电脑环境
雨声不在13 小时前
macos 12使用docker
macos·docker·容器
一叶龙洲13 小时前
ubuntu26.04 xfce美化成mac
服务器·ubuntu·macos
李小白杂货铺1 天前
Oh My Zsh 简记
macos·macbook·zsh·主题·插件·oh my zsh·omz
fukai77221 天前
macOS防止休眠的菜单栏小工具
macos
web守墓人2 天前
【go语言】gotar:使用go语言复刻tar命令,并加入7z支持,可独立运行在windows、linux、macos上
linux·macos·golang
之歆3 天前
从 Mac 回到 Windows:用 PowerToys + AutoHotkey 找回熟悉手感
windows·macos
星辰即远方3 天前
字符串合法性检验
macos·ios·cocoa