在 CentOS(Linux) 里,“env 区分大小写”主要体现在 环境变量名 和 shell 变量 上,规则和结论如下:
环境变量名是区分大小写的,
PATH和path是两个完全不同的变量。
export VAR=1
export var=2
echo $VAR # 输出 1
echo $var # 输出 2
✅ VAR ≠ var
例如:
PATH
HOME
USER
SHELL
LANG
这些是约定俗成,不是系统强制,但强烈建议遵守。
env 只是显示或运行命令并传入环境变量:
env
env | grep PATH
env | grep path
✅ 匹配是区分大小写的
env
或
printenv
env | grep '^PATH='
❌ 不会匹配 path
env | grep -i path
⚠️ 这是 人为 grep 忽略大小写,不是 env 本身特性
export MY_VAR=123
export my_var=123
| 系统 | 环境变量是否区分大小写 |
|---|---|
| CentOS / Linux | ✅ 区分 |
| Windows | ❌ 不区分 |
所以 从 Windows 迁移到 CentOS 经常踩坑。
✅ 当然区分
export PATH=/usr/bin
export path=/USR/BIN
值不同,意义不同。
| 命令 | 作用 |
|---|---|
| env | 显示环境变量 |
| export | 设置并导出变量 |
| set | 显示所有变量(含局部变量) |
在 CentOS 中,环境变量名严格区分大小写,
PATH和path是两个不同变量,建议全部使用大写命名。
如果你有:
可以继续问,我可以针对具体场景说明。