一种高效永久添加系统环境Path的方法:修改注册表

1 篇文章 0 订阅
1 篇文章 0 订阅
本文介绍了在配置C++环境时遇到的添加系统环境Path问题,提出两种解决方案:一是临时性的SETX命令,二是通过修改注册表实现永久添加。警告修改注册表存在风险,建议谨慎操作。
摘要由CSDN通过智能技术生成

最近在配置C++的环境时遇到了需要添加系统环境Path的问题,发现通常的解决方案并不高效。

如果你也在使用windows操作系统的过程中,需要频繁添加过系统环境Path,那么本文可能会为你提供一种可能的高效解决方案。

存在的问题

不必多说,下面这种通过打开设置窗口添加的方式大家都经历过。

图片来源:

 http://t.csdnimg.cn/H3HjS

有没有一种方式可以便捷地一键添加系统环境Path?

解决方案一

答案是肯定的。Windows在cmd中有SET和SETX两个命令用于修改变量值。

于是就有了一种方案:

setx /M PATH "%PATH%;NEW_PATH"

然而,尝试过后,你会发现只有当前会话的PATH变量被修改了,而在系统设置中并没有成功添加。原来,set命令只作用于当前会话变量,并不能修改系统配置。

那么要如何才能永久添加系统环境Path呢?

解决方案二

方法就是从源头上处理,直接修改注册表!

系统环境的Path实际上是windows操作系统的注册表中的一个键

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

的其中一个变量Path的值。

那么通过编写一个批处理的脚本实现注册表的修改即可高效地完成添加系统环境Path的操作。

步骤一

添加一个yourname.bat文件,内容为

@ECHO OFF
REM 此脚本用于添加系统环境变量,操作需谨慎!
	SET Key="HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
	SET NewPath=%~1
REM 备份原Path
	FOR /F "tokens=2*" %%A IN ('REG QUERY %Key% /v Path') DO SET Path_copy=%%B
	REG ADD %Key% /v PATH_COPIED /t REG_SZ /d "%Path_copy%"
	ECHO Path变量已经复制到 %Key%:PATH_COPIED= 
	REG QUERY %Key% /v PATH_COPIED
REM 添加路径
	REG ADD %Key% /v Path /t REG_SZ /d "%Path_copy%%NewPath%;"
	ECHO Path 变量已替换为: 
	REG QUERY %Key% /v Path

步骤二

在yourname.bat同一路径下以管理员身份运行cmd(参考http://t.csdnimg.cn/71Lsl),执行 

yourname.bat   "要添加的路径"

注意事项

通过修改注册表实现Path的添加是一种危险的行为,可能导致原有Path的丢失,脚本已通过备份降低安全风险。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值