分布式系统的一致性协议——从 Paxos 到 Raft 的工程化理解
2026/7/18 23:58:43
简单来说,环境变量是操作系统或用户设置的、用于存储系统路径、配置信息和临时数据的键值对。它们为所有应用程序提供了一个动态的、共享的配置环境。
C:\Users\你的名字\...),从而能在不同用户的电脑上通用。| 使用场景 | 具体例子与说明 |
|---|---|
| 1. 命令行中快速访问 | 在 CMD 或 PowerShell 中,输入%USERPROFILE%可直接代表你的用户文件夹路径(如C:\Users\张三),无需记忆和输入冗长路径。 |
| 2. 让系统找到可执行文件 | 这是Path 变量的核心作用。当你输入一个命令(如python或javac)时,系统会按照Path中列出的目录顺序去寻找对应的.exe文件。 |
| 3. 应用程序配置 | 许多软件依赖环境变量来定位其所需的资源: •JAVA_HOME:告诉系统 Java 开发工具包安装在哪里。 •ANDROID_HOME:告诉 Android 开发工具 SDK 的位置。 |
| 4. 脚本的跨用户/跨机器兼容 | 在批处理或脚本中,使用%TEMP%表示临时文件夹,使用%PROGRAMFILES%表示 64 位程序文件夹。无论电脑用户名是什么或系统盘是哪个盘符,脚本都能正确运行。 |
| 5. 区分开发/生产环境 | 在开发和部署中,常用环境变量来存储配置(如数据库连接字符串、API密钥),避免将敏感信息硬编码在代码中。只需在服务器上设置变量,应用即可读取。 |
| 6. 自定义系统行为 | 例如,TEMP和TMP变量定义了系统和程序存放临时文件的位置。你可以修改它们到空间更大的磁盘。 |
| 变量名 | 典型值 | 用途 |
|---|---|---|
| Path | C:\Windows\system32;C:\Windows;... | 最重要的变量。系统执行命令时的搜索路径列表。 |
| USERPROFILE | C:\Users\<用户名> | 当前用户的主目录。 |
| SystemRoot/windir | C:\Windows | Windows 系统目录。 |
| TEMP/TMP | C:\Users\<用户名>\AppData\Local\Temp | 临时文件目录。 |
| PROGRAMFILES | C:\Program Files | 64 位程序的默认安装目录。 |
| APPDATA | C:\Users\<用户名>\AppData\Roaming | 用户应用程序的数据存储目录。 |
| NUMBER_OF_PROCESSORS | 8 | 系统处理器核心数。 |
set查看所有,或set <变量名>查看具体变量(如set path)。Get-ChildItem Env:查看所有,或$env:<变量名>查看具体变量(如$env:path)。这是设置环境变量的标准方法,请以管理员身份操作以确保有足够权限修改系统变量。
打开“环境变量”窗口:
理解两种变量:
编辑 Path 或其他变量:
JAVA_HOME的系统变量,值为C:\Program Files\Java\jdk-17,然后在Path中添加新条目%JAVA_HOME%\bin。生效:任何已打开的CMD或PowerShell窗口不会自动获取新的环境变量设置。你需要重新启动它们,或者重启资源管理器乃至电脑以确保所有程序都识别新设置。
set MY_VAR=some_value$env:MY_VAR = "some_value";分隔。Path)可能导致系统不稳定或某些程序无法启动。修改前可考虑备份。环境变量是 Windows 系统和应用程序的动态配置中枢。对于普通用户,最常见的操作就是在安装开发工具(如 Java、Python、Node.js、Android SDK)时,按照教程将其可执行文件路径添加到Path变量,从而能在任何位置的命令行中直接调用它们。理解并善用环境变量,是进阶使用和开发配置的重要一步。