使用 Windows 默认设置的环境变量,可以快速准确定位到 Windows 系统关键资源位置。
查看环境变量
命令提示符(cmd.exe):
1 2
| echo %USERNAME% echo %ProgramFiles(x86)%
|
PowerShell(PS):
1 2 3 4
| $env:USERNAME echo $env:USERNAME echo ${env:ProgramFiles(x86)} [Environment]::GetEnvironmentVariable("ProgramFiles(x86)")
|
显示所有环境变量及其值(PS):
常用基本变量
变量名 |
保存内容 |
典型值 |
%USERNAME% |
当前登录用户名 |
{用户名} |
%COMPUTERNAME% |
当前计算机名 |
{计算机名} |
%USERDOMAIN% |
当前登录用户所属的工作组或 Windows 域 |
{用户域} |
%LOGONSERVER% |
对当前用户的登录凭据(名称和密码)进行身份验证的服务器的主机名 |
\\{域登录服务器} |
%PROMPT% |
当前命令提示符格式的代码 |
$P$G |
常用路径(Path)变量
%PATH%
该变量包含一个以分号分隔(中间不要放置空格)的目录列表,命令解释器将在其中搜索与给定命令匹配的可执行文件。表示路径的环境变量可以嵌套在 %PATH%
变量中,但仅限于一层间接。如果该子路径环境变量本身包含代表路径的环境变量,%PATH%
在变量替换中将无法正确扩展。
系统版本 |
典型值 |
Windows XP 及更高版本 |
C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;{外部可执行程序路径} |
%PATHEXT%
系统版本 |
典型值 |
Windows XP |
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.WSF;.WSH |
Windows Vista 及更高版本 |
.com;.exe;.bat;.cmd;.vbs;.vbe;.js;.jse;.wsf;.wsh;.msc |
%HOMEPATH%
该变量包含用户主目录的完整路径。
系统版本 |
典型值 |
Windows XP |
\Documents and Settings\{用户名} |
Windows Vista 及更高版本 |
\Users\{用户名} |
%PSModulePath%
系统版本 |
典型值 |
Windows Vista 及更高版本 |
%SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\ |
常用目录(Directory)变量
%HOMEDRIVE% / %SystemDrive% (Windows NT 系列)
该变量的值放置系统目录的驱动器。
系统版本 |
典型值 |
DOS, OS/2 及 Windows |
C: |
%windir% / %SystemRoot% (Windows NT 系列)
该变量指向 Windows 目录。
系统版本 |
典型值 |
Windows 95 - 98、ME、XP 及更高版本 |
C:\WINDOWS |
Windows 2000、NT 4.0 及 NT 3.1 |
C:\WINNT |
Windows NT 3.5 及 NT 3.51 |
C:\WINNT35 |
Windows NT 4.0 Terminal Server |
C:\WTSRV |
%ComSpec% / %COMSPEC%
该变量包含 命令处理器(command processor) 的完整路径;目标文件在 Windows NT 系列操作系统上是 cmd.exe,而在 Windows 9x 上,是 COMMAND.COM。
系统版本 |
典型值 |
Windows NT |
C:\Windows\System32\cmd.exe |
Windows 9x |
C:\COMMAND.COM 或 C:\DOS\COMMAND.COM |
%ProgramFiles%, %ProgramFiles(x86)%, %ProgramW6432%
该变量指向 Program Files 目录,该目录存储了由 Windows 及其他所有第三方安装的程序。
在 64 位版本的 Windows (XP、2003、Vista) 中,还有 %ProgramFiles(x86)%
以及 %ProgramW6432%
。%ProgramFiles%
本身取决于请求环境变量的进程本身是 32 位还是 64 位,这是由 WoW64(Windows-on-Windows 64-bit) 重定向引起的。
变量名 |
仅64位 |
典型值 |
%ProgramFiles% |
否 |
C:\Program Files |
%ProgramFiles(x86)% |
是 |
C:\Program Files (x86) |
%ProgramW6432% |
是 |
C:\Program Files |
%CommonProgramFiles%, %CommonProgramFiles(x86)%, %CommonProgramW6432%
该变量指向 Program Files 目录的 Common Files 子目录。
变量名 |
仅64位 |
典型值 |
%ProgramFiles% |
否 |
C:\Program Files\Common Files |
%ProgramFiles(x86)% |
是 |
C:\Program Files (x86)\Common Files |
%ProgramW6432% |
是 |
C:\Program Files\Common Files |
%ALLUSERSPROFILE% / %ProgramData% (Windows Vista 及更高版本)
此变量保存所有用户配置文件目录的完整路径。该目录包含所有系统帐户使用的资源和设置。复制到“All Users”目录下的 「开始」菜单(Start menu) 或 桌面(Desktop) 目录的快捷方式链接将分别出现在每个用户的 「开始」菜单 或 桌面 中。
系统版本 |
典型值 |
Windows XP |
C:\Documents and Settings\All Users |
Windows Vista 及更高版本 |
C:\ProgramData |
%PUBLIC%
该变量(在 Vista 中引入)指向公共(pseudo)用户配置文件目录。
系统版本 |
典型值 |
Windows Vista 及更高版本 |
C:\Users\Public |
%USERPROFILE%
Windows NT 及其衍生版本上的特殊系统范围环境变量。它的值是当前用户的配置文件目录的位置,在该目录中可以找到用户的 HKCU 注册表配置单元 (NTUSER)。用户还可以使用 %USERNAME%
变量来确定活动用户的登录标识。
系统版本 |
典型值 |
Windows XP |
C:\Documents and Settings\{用户名} |
Windows Vista 及更高版本 |
C:\Users\{用户名} |
%APPDATA%
该变量存储登录用户的 应用程序数据(Application Data) 目录的完整路径。不适用于 Windows NT 4.0 SP6 UK。
系统版本 |
典型值 |
Windows XP |
C:\Documents and Settings\{用户名}\Application Data |
Windows Vista 及更高版本 |
C:\Users\{用户名}\AppData\Roaming |
%LOCALAPPDATA%
该变量(在 Vista 中引入)用于存储 本地应用程序(Applications) 的临时文件。它的用途包括存储桌面主题、Windows 错误报告、缓存和 Web 浏览器配置文件。
系统版本 |
典型值 |
Windows Vista 及更高版本 |
C:\Users\{用户名}\AppData\Local |
%TEMP% \ %TMP%
这些变量包含应存储临时文件的目录的路径。操作系统工具通常仅使用 %TEMP%
,而第三方程序也使用 %TMP%
。通常 %TEMP%
优先于 %TMP%
。
系统版本 |
典型值 |
Windows XP |
C:\Documents and Settings\{用户名}\Local Settings\Temp |
Windows Vista 及更高版本 |
C:\Windows\Temp (系统环境变量) C:\Users\{用户名}\AppData\Local\Temp (用户环境变量) |
参考资料