环境变量简述

环境变量简述

一、简述

环境变量是系统中所存储的为系统或其他程序所使用的许多组参数,它以键值对方式存储及调用。
常见的环境变量有:
%APPDATA% 应用数据默认环境变量
%PATH% 路径搜索变量,为当前程序环境添加PATH路径的环境

二、编辑方式

  1. 直接通过 win+R,输入 sysdm.cpl ,进入高级系统设置,选择高级页签->环境变量即可。
  2. 下载Rapid Environment Editor进行修改

三、环境变量原始内容简介

原始环境变量包括只读/隐藏的变量、预定义的变量组成:
只读/隐藏的变量由于与系统运行逻辑相关不支持修改,如ALLUSERSPROFILE、CommonProgramFiles、CommonProgramFiles(x86)等(下文详解)
预定义的变量可供用户根据需求自主调整,如计算机名、版本信息、缓存位置、环境等,如OS=Windows_NT、USERNAME=SYSTEM、PATH等

四、环境变量结构

变量名称变量类型
变量名称如PATH文本字符串与可拓展字符串变量所对应的值

变量类型(可在注册表或其他工具如 Rapid Environment Editor中修改)
文本字符串:注册表类型为REG_SZ,值为文本字符串可直接访问
可拓展字符串:注册表类型为REG_EXPAND_SZ,值为列表或值包含引用字符串(如“%APPDATA%”)

五、作用域

用户变量:作用于当前系统
系统变量:作用于同一系统下全局
相关注册表为:
用户变量:HKEY_CURRENT_USER\Environment
系统变量:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

六、只读/隐藏环境变量

系统级环境变量
ALLUSERSPROFILE=C:\ProgramData # 所有用户的共享配置文件位置 CommonProgramFiles=C:\Program Files\Common Files # 64位程序共享的组件和库文件目录 CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files # 32位程序共享的组件和库文件目录 COMPUTERNAME=DESKTOP-GEGJ0BU # 本计算机的网络名称 ProgramData=C:\ProgramData # 与ALLUSERSPROFILE相同,指向程序数据存储位置 ProgramFiles=C:\Program Files # 64位应用程序的默认安装目录 ProgramFiles(x86)=C:\Program Files (x86) # 32位应用程序的默认安装目录 ProgramW6432=C:\Program Files # 专门指向64位程序目录的变量 PUBLIC=C:\Users\Public # 公共用户文件夹 SystemDrive=C: # Windows系统安装的驱动器盘符 SystemRoot=C:\WINDOWS # Windows系统目录的完整路径
用户级环境变量
APPDATA=C:\Users\Dallas\AppData\Roaming # 应用程序数据的漫游配置文件位置 HOMEDRIVE=C: # 用户主目录所在的驱动器盘 HOMEPATH=\Users\Dallas # 用户主目录在驱动器上的相对路径 LOCALAPPDATA=C:\Users\Dallas\AppData\Local # 应用程序数据的本地配置文件位置 LOGONSERVER=\\DESKTOP-GEGJ0BU # 处理用户登录请求的服务器名称 USERDOMAIN=DESKTOP-GEGJ0BU # 用户所属的域名或计算机名 USERNAME=Dallas # 当前登录用户的用户名 USERPROFILE=C:\Users\Dallas # 用户的主配置文件目录

七、预定义变量

系统级环境变量
ComSpec=%SystemRoot%\system32\cmd.exe DriverData=C:\Windows\System32\Drivers\DriverData NUMBER_OF_PROCESSORS=8 OS=Windows_NT Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\ PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC PROCESSOR_ARCHITECTURE=AMD64 PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 165 Stepping 2, GenuineIntel PROCESSOR_LEVEL=6 PROCESSOR_REVISION=a502 PSModulePath=%ProgramFiles%\WindowsPowerShell\Modules;%SystemRoot%\system32\WindowsPowerShell\v1.0\Modules TEMP=%SystemRoot%\TEMP TMP=%SystemRoot%\TEMP USERNAME=SYSTEM windir=%SystemRoot%
用户级环境变量
Path=%USERPROFILE%\AppData\Local\Microsoft\WindowsApps; TEMP=%USERPROFILE%\AppData\Local\Temp TMP=%USERPROFILE%\AppData\Local\Temp