env命令显示当前会话所有已导出的环境变量,按字母顺序列出“变量名=变量值”格式;printenv可查单个、多个或模糊匹配变量;set显示全部shell变量及函数,建议配合less分页搜索;用env > env_now.txt保存快照便于对比分析。
直接在终端里输入 env,回车就能看到当前会话中所有已生效的环境变量。它按字母顺序列出全部导出变量,格式是“变量名=变量值”,比如 path=/usr/bin:/bin、home=/users/yourname 这类。
这个输出反映的是此刻真实起作用的环境状态,不依赖你有没有 source 过配置文件,也不受未导出变量干扰——只要它在当前 Shell 里导出了,就一定在这里。
用 printenv 查单个或多个变量更精准
- 只看 PATH:
printenv PATH - 同时查 HOME 和 USER:
printenv HOME USER - 模糊搜含 “JAVA” 的变量(大小写不敏感):
printenv | grep -i java
想确认有没有被覆盖或没导出的变量?用 setset 会显示所有 shell 变量(包括没 export 的)、函数和位置参数。输出量大,建议搭配分页:set | less
然后按 / 输入关键词(如 PATH),回车搜索,按 n 跳下一处,按 q 退出。
保存当前快照方便对比或排查
运行这行命令,把全部变量存成文本:env > env_now.txt
之后用 cat env_now.txt 就能随时查看,也适合发给同事协助分析差异。
不复杂但容易忽略:每次新开终端窗口,环境变量可能不同;临时设置的变量只在当前窗口有效。











