在 CentOS(以及一般 Linux)里,env 指的是当前 shell 的环境变量。清除方式取决于你是想:
unsetunset VAR_NAME
例如:
unset PATH
unset JAVA_HOME
✅ 只对当前 shell 会话有效。
env -ienv -i bash
这会启动一个干净的环境变量 shell(没有 PATH、HOME 等)。
⚠️ 注意:
env -i bash 后,很多命令可能找不到,需要手动设置 PATH:
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
env
或
printenv
env -i command
例如:
env -i ls
如果是永久环境变量,需要检查以下文件:
/etc/profile
/etc/bashrc
~/.bash_profile
~/.bashrc
/etc/profile.d/*.sh
找到对应的 export 行,删除或注释掉,然后:
source ~/.bashrc
exec env -i /bin/bash --norc --noprofile
这会重新启动一个无任何环境变量的 bash。
| 需求 | 命令 |
|---|---|
| 删除单个变量 | unset VAR |
| 清空环境变量 | env -i bash |
| 临时运行命令 | env -i command |
| 清除永久变量 | 编辑 profile 文件 |
如果你能说明 “清除 env 是为了什么场景”(比如:脚本、Docker、服务启动、排错),我可以给你更精确的建议。