什么是环境变量——电脑里的“备忘录”_一文看懂Windows 11环境变量 | 添柴不加火
前言
本文操作系统版本为:Win 11专业工作站版
可曾听闻“环境变量”,遇到“不是内部或外部命令”的报错是不是一头雾水。比如:你在命令行里输入python,结果系统说“不是内部或外部命令”——这就是环境变量没有设置好。
什么是环境变量
那什么是环境变量呢?
环境变量是操作系统中用于存储配置信息的一种机制,它以键值对的形式存在,能够影响运行中的程序行为。环境变量可以分为用户变量和系统变量,前者仅对当前用户有效,后者对所有用户生效。
环境变量是操作系统或应用程序运行环境中具有特定名称的对象,它包含了一个或多个应用程序将用到的信息。
关于环境变量网上众说纷纭,是不是更懵了,打个比方:环境变量就像贴在教室门口的“课程表”。上课铃响,老师不用问学生“这节是什么课”,看一眼课表就知道该讲什么。程序运行时,也会看一眼环境变量,就知道“临时文件该放哪”、“去哪里找依赖库”。
再来一个比喻:想象你是一个大厨,在一个巨大的厨房里工作。这个厨房里有各种各样的工具(比如锅、铲子、烤箱)和食材(油、盐、酱、醋),它们都放在不同的柜子里。现在,你想要做一道菜。你需要知道“盐放在哪里”、“烤箱怎么预热”、“用什么油”。这些信息不可能每次都写在菜谱上,因为不同厨房的摆放不一样。那么,厨房里就需要有一个 “备忘录” ,上面写着:“盐放在进门左手第二个柜子”,“烤箱默认预热到200度”,“常用花生油”等等。
这样是不是更好理解了,接下来将备忘录与环境变量结合。
在计算机世界里,环境变量就是操作系统为运行的程序准备的一个 “全局备忘录”。“环境”:指的是程序运行时所处的“环境”,比如当前是谁在使用电脑、电脑的临时文件夹在哪、系统装在哪里等等。“变量”:就是一个有名字的存储空间,里面可以放一段文字或一个路径。比如变量名叫PATH,它里面存的是 C:\Windows\System32; C:\Program Files 这样的文件夹位置。如图:
当你要运行一个程序时,会自动检索系统中的环境变量,也就是说程序会偷偷瞄一眼这个“备忘录”,看看:
- 我需要的依赖库在哪里?(PATH变量)
- 我的配置文件该放哪里?(HOME变量)
- 临时文件往哪里存?(TEMP变量)
常用的环境变量
接下来说一些常用的环境变量:
PATH:系统搜索程序的“家庭地址”。当你在命令行输入命令,系统就在PATH列出的文件夹里找对应的程序。这么理解:你输入(运行)的那一个命令(程序),系统需要去PATH中找它的安装目录(家目录,也就是家庭地址),就好比你去你朋友家找你的朋友之前得有你朋友的家庭地址。也可以这么理解:程序找PATH中记录的安装目录(家目录,也就是家庭地址),说白了就是让程序回家才不会报错。
JAVA_HOME:如果用Java的话,一定会遇到,它就是告诉系统Java装在哪。
TEMP或TMP:存放临时文件的文件夹,可以定期清理。
接下来举个关于PATH变量的例子。比如:我在命令行输入ping命令,系统就会根据PATH里记录的文件夹,一个一个翻,直到找到 ping.exe 并运行它。如果没找到,就会报错“不是内部或外部命令”。正常情况下如图所示:
补充一句,命令行中大小写不敏感,也就是不区分大小写,如:
正常执行命令因为ping.exe程序的环境变量默认配置好了。也就是说ping.exe程序所在的目录(也可以当作它的家庭地址C:\Windows\System32)已经添加到“备忘录”(PATH变量)中了,执行ping命令时直接在“备忘录”中查找,也就是说ping能找到家,或者说系统能去ping的家找到它。

接下来我们将C:\Windows\System32变量值改为C:\Windows\System31,也就是说把它的家庭地址改了,那又会发生什么呢?ping还能找到家吗?我们不妨来试一试。

修改环境变量之后再次执行ping命令,发现报错:
我们悄悄的把它“备忘录中的家庭地址”改了之后,它找了一圈啥也没找到,也就是说找不到家了,就不知道该怎么办了,跟小孩子一样哭了,也就报错了。或者是说系统无法去ping的家找到它了,所以就报错了。
再补充一点:%SystemRoot%代表C:\Windows。在Windows系统中,使用%变量名%的形式可以引用其他环境变量的值,%变量名%是用来引用环境变量的语法。例如,如果定义了一个环境变量JAVA_HOME=C:\Java\bin,那么在其他地方可以通过%JAVA_HOME%来代替具体路径C:\Java\bin。
怎么设置环境变量
win+i 打开设置,依次点击“系统-系统信息-高级系统设置”

点击“环境变量”即可进行配置

结语
看到这里相信大家应该知道什么是环境变量了,也知道为什么要配置环境变量了吧。
- 省去敲长路径:比如设置了 PATH,直接输 notepad 就能打开记事本,不用输完整路径。
- 让程序找到依赖:很多开发工具(如Java、Python)需要知道安装位置,通过环境变量告诉它们。
- 个性化你的电脑:你可以自定义一些变量,让程序按你的习惯运行。
- 解决报错:最常见的“不是内部或外部命令”就是环境变量没配好,学会设置就能自己解决。
温馨提示:新手练习可以在虚拟机中进行配置修改系统变量或者优先修改用户变量
至此,环境变量的讲解结束,感谢支持!
本文已更新,内容稍作优化。
© 2026 添柴不加火 本文为原创内容,受《中华人民共和国著作权法》保护。 未经作者书面许可,禁止任何形式的复制、改编或商业使用。 如需转载,请注明原文链接:https://chuna2.787528.xyz/xize766/p/19712046/environment-variables >

环境变量听起来很高深,其实就是电脑里的“备忘录”,告诉程序各种文件存放在哪里、该怎么运行。本文专为Windows 11小白量身打造,用课程表及厨房调料的比喻让你秒懂环境变量的概念,并手把手演示如何查看、新增和修改环境变量。读完你会发现,原来“不是内部或外部命令”这种报错自己也能轻松解决!全文无代码基础要求,零门槛上手。
浙公网安备 33010602011771号