如何另环境变量修改立即生效
时间: 2023-10-04 10:13:07 浏览: 282
在 Windows 系统中,修改环境变量后需要重新打开命令行窗口或者重启计算机才能生效。如果你希望在不重启计算机的情况下立即生效,可以使用以下方法:
1. 在命令行窗口中执行以下命令:`setx VARIABLE_NAME "variable_value" /m`。其中 `VARIABLE_NAME` 为要修改的环境变量名称,`variable_value` 为要设置的变量值。`/m` 参数表示要将变量设置为系统级别的环境变量。
2. 打开任务管理器,找到 explorer.exe 进程并结束它。然后在任务管理器中点击“文件”->“新建任务”,输入“explorer.exe”并点击“确定”按钮。这样就会重新启动资源管理器,新的环境变量就会生效了。
注意:使用第二种方法可能会导致你正在进行的一些操作被中断,因此请先保存好所有未保存的工作。
相关问题
Ubuntu系统下如何令环境变量修改立即生效
在Ubuntu系统下,要让环境变量修改立即生效,可以使用以下方法:
1. 执行source命令,例如:
```
source ~/.bashrc
```
这会重新加载当前用户的bashrc文件,使其生效。
2. 执行export命令,例如:
```
export PATH=/new/path:$PATH
```
这会将新的PATH值导出到当前Shell进程中,使其生效。
3. 在终端中打开一个新的Shell窗口或者会话,这样新的环境变量值就会被加载并生效。
需要注意的是,以上方法只会使环境变量在当前Shell进程中生效,如果需要让环境变量在所有Shell进程和系统中生效,需要将其添加到系统的环境变量配置文件中(如/etc/environment或/etc/profile.d/)并重启系统。
bat脚本修改环境变量后立即生效
在 Windows 操作系统中,修改环境变量后需要重新打开命令行窗口或者重新启动计算机才能使修改生效。如果想要在不重启计算机或者重新打开命令行窗口的情况下立即生效,可以使用以下方法:
1. 在 bat 脚本中使用 `setx` 命令修改环境变量,并且在修改后使用 `set` 命令强制更新当前窗口的环境变量,示例代码如下:
```
setx PATH "%PATH%;C:\NewFolder" /M
set PATH=%PATH%
```
其中,`setx` 命令用于修改系统环境变量 PATH,`/M` 参数表示修改的是系统级别的环境变量。`set` 命令用于强制更新当前窗口的环境变量,将新的环境变量值同步到当前窗口的进程中。
2. 在 bat 脚本中使用 `setx` 命令修改环境变量后,使用 `SendMessage` API 发送消息给 Windows Explorer 进程,通知它更新环境变量。示例代码如下:
```
setx PATH "%PATH%;C:\NewFolder" /M
setlocal EnableDelayedExpansion
set "msg=!WM_SETTINGCHANGE!"
set "explorer=%SystemRoot%\explorer.exe"
set "param=/select,explorer.exe"
set "param=!param:\=\\!"
set "param=!param:,=\,! /e,!param:~0,-1!!"
if defined PROCESSOR_ARCHITEW6432 (
set "pids="
for /f "usebackq tokens=2 delims==;" %%i in (`tasklist /fi "imagename eq explorer.exe" /fi "memusage gt 50000" /fo list /v`) do (
set "pids=!pids! %%i"
)
if defined pids (
echo ^<%time%^> Killing processes !pids:~1! to force Explorer restart...
taskkill /pid !pids:~1! /f >nul 2>&1
)
) else (
for /f "usebackq tokens=2 delims==;" %%i in (`tasklist /fi "imagename eq explorer.exe" /fi "memusage gt 25000" /fo list /v`) do (
set "explorer=%%i"
)
)
echo ^<%time%^> Spawning Explorer process %explorer% %param%...
start "" "%explorer%" %param%
endlocal
```
其中,`setx` 命令用于修改系统环境变量 PATH,`/M` 参数表示修改的是系统级别的环境变量。`SendMessage` API 用于向 Windows Explorer 进程发送消息,通知它更新环境变量。在代码中,使用了一些技巧来找到 Windows Explorer 进程的 PID,并且使用 `taskkill` 命令杀掉这些进程,然后使用 `start` 命令启动一个新的 Windows Explorer 进程,并且带上指定的参数。这样就可以在不重启计算机或者重新打开命令行窗口的情况下立即生效修改的环境变量。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)