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 邮箱路径
相关推荐
伐尘1 天前
【mac】如何在 macOS 终端中高效查找文件:五种实用方法
运维·macos
qyvlik1 天前
Mac 使用 softhsm
macos·hsm·softhsm
Digitally1 天前
如何轻松地将联系人从 Mac 同步到 iPhone
macos·ios·iphone
2501_928094651 天前
PDF Reader 编辑阅读工具(Mac中文)
macos·pdf·mac
他们都不看好你,偏偏你最不争气1 天前
【iOS】对象复制与属性关键字
macos·ios·objective-c·cocoa·面向对象
Someone_sky1 天前
Loopback for Mac:一键打造虚拟音频矩阵,实现跨应用音频自由流转
macos·音视频
Pocker_Spades_A1 天前
Python快速入门专业版(一):Windows/macOS/Linux 系统环境搭建(附常见报错解决)
windows·python·macos
FOWng_lp2 天前
66Mac电脑Tomcat+Java项目中 代码更新但8080端口内容没有更新
java·开发语言·macos·tomcat
i建模2 天前
移动开发如何给不同手机屏幕做适配
macos·智能手机·cocoa
赵榕2 天前
HyperDock不显示预览图的解决方法
macos·mac·hyperdock