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 邮箱路径
相关推荐
学习非暴力沟通的程序员2 小时前
Mac 自动定时打开指定URL(无日历版)操作文档
macos
mixboot1 天前
macOS Homebrew 安装 Nmap
macos·nmap
Dream-Y.ocean1 天前
告别设备束缚!网易 UU 远程 Mac 被控体验:免费高清 + 多场景丝滑,跨端办公刚需神器
macos
❀͜͡傀儡师2 天前
docker安装mac系统
macos·docker·容器
库奇噜啦呼2 天前
【iOS】多线程学习
macos·ios·cocoa
守城小轩2 天前
Chromium 140 编译指南 macOS 篇:基础环境准备(一)
chrome·macos·chrome devtools·指纹浏览器·浏览器开发·超级浏览器
许泽宇的技术分享2 天前
用 OpenAI Whisper + pyannote.audio 打造“谁在说什么”的全栈语音理解系统
macos·whisper·xcode
游戏开发爱好者82 天前
iOS 商店上架全流程解析 从工程准备到审核通过的系统化实践指南
android·macos·ios·小程序·uni-app·cocoa·iphone
_可乐无糖2 天前
活到老学到老之yt-dlp_macos(二)
macos
hai-chu2 天前
将 Neo4j 安装为 macOS 服务
macos·策略模式·neo4j