环境变量是什么?
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,具体起什么作用这和具体的环境变量相关。常用的是PATH环境变量,其作用是告诉系统,当要求系统运行一个程序而没有告诉系统若在当前目录下面没有寻找到此程序,还应到哪些目录下去寻找。
环境变量分为两类:一个是上半部分区域用户变量,另一个是下半部分系统变量。用户变量是只适用于当前用户使用,换了用户就不管用了,每个用户拥有不同的用户变量,不同用户的用户变量之间是并列的,也是互不干扰的。而系统变量则是任何用户都可以使用,系统变量就是系统级别的变量,系统变量被修改了,每个系统用户都将受到影响。
快捷键启动 :
win + R
输入sysdm.cpl
环境变量的解释,分类,
一、分类
PATH
: 定义了系统查找可执行文件的路径。操作系统在执行命令时会根据PATH
中列出的路径顺序查找可执行文件。TEMP
和TMP
: 指定存放临时文件的目录。系统和应用程序可以将临时文件存储在这些目录中。临时文件可能会在应用程序运行时创建,并在使用后被删除。ComSpec
: 是 Windows 操作系统中的一个环境变量,它指定了用于处理命令行操作的命令处理器的路径。这个变量非常重要,因为它定义了系统默认使用的命令行解释器(可以自定义更改,注意他指向可执行文件)DriverData
: 某些操作系统和编程环境中用于管理驱动程序或设备驱动相关信息的环境变量或配置项。USERPROFILE
: 指向当前用户的主目录,可以使用USERPROFILE
来访问用户的个人数据和配置文件。PATHEXT
: 在 Windows 系统中运行命令时,PATHEXT
变量指定了可以直接执行的文件扩展名。PATHEXT
允许你在运行程序时省略文件扩展名。例如,输入myprogram
时,系统会尝试查找myprogram.com
,myprogram.exe
, 等。
二、用cmd执行某一可执行文件的时候,若提示“不是内部或外部命令,也不是可运行的程序或批处理文件”原因
若在当前目录找不到对应文件名的程序,就在系统变量的PATH的路径中,依次寻找对应的可执行程序文件(查找顺序是按照路径的录入顺序从左往右寻找的,最前面一条的优先级最高,如果找到程序就停止寻找,后面的路径不再执行)
如果系统变量的PATH的路径找不到,再到用户变量的PATH路径中寻找(如果系统变量和用户变量的PATH中同时包含了同一个命令,则优先执行系统变量PATH中的命令)
每次修改PATH环境变量,要确定保存了,再重启CMD,否则不生效。
三、path详解
1.搜索顺序
在 PATH
环境变量中定义的路径仅在指定的目录级别进行搜索。也就是说,PATH
中的路径不会递归地向下一级文件夹进行搜索。操作系统只会在 PATH
环境变量指定的每个目录中查找匹配的可执行文件,而不会自动进入这些目录的子目录进行搜索。
2.搜索优先级
搜索优先级从上到下。