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_CLIENT、SSH_TTY等)
TMPDIR 临时文件目录路径
HOME 主目录路径
EDITOR 默认文本编辑器
MAIL 邮箱路径
相关推荐
青柠之夏cc21 分钟前
Kotlin Multiplatform:一次编写,全平台运行,2026 年跨平台开发的 “最优解”?
macos·objective-c·cocoa
黑科技iOS上架1 天前
iOS framework/dylib动态库定向加固实战
macos·ios·objective-c·cocoa·审核·ios混淆·执行程序差异化
神奇的小猴程序员2 天前
苹果Mac电脑玩我的世界没有版本?用PCL-R即可!
macos
灵韵aura2 天前
macOS 的指令缩写
macos
yqj2343 天前
ESP32-S3中小智项目优化内容
ide·macos·xcode
Mininglamp_27184 天前
Cider量化配置与性能调优:在M系列Mac上压榨Mano-P的每一点推理性能
macos
xuefuhe4 天前
MacOS EAGAIN无法打开terminal
macos
传奇开心果编程5 天前
【SwiftUI入门练中学】第7课 动画与手势:让界面更灵动
学习·macos·ui·ios·swiftui·swift
the3clipse5 天前
MacOS、Linux 与 Windows 视频编解码对比:AV1、HEVC、ProRes 与硬件加速优劣势
linux·windows·macos·hevc·av1·视频解码·硬件解码
传奇开心果编程6 天前
【SwiftUI娓娓道来】第3课:让界面活起来——交互与动画指南
学习·macos·ui·ios·swiftui·swift