中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-13 19:44
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎么修改path变量并立即生效?(已解决)
楼 主 怎么修改path变量并立即生效?(已解决) 发表于 2008-01-02 20:25 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
UID 96653
性别 男
状态 离线
答案在9楼

[ Last edited by tireless on 2008-5-26 at 06:40 PM ]
2 发表于 2008-01-02 20:46 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
脚本里面应该有效,脚本关闭了下次用就不成了,可以试试写注册表。。。
3 发表于 2008-01-02 20:54 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d "%path%;c:\test" /f
4 发表于 2008-01-02 21:12 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
UID 96653
性别 男
状态 离线
Originally posted by HAT at 2008-1-2 12:54 AM:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d "%path%;c:\test" /f



我之前就是试了这个,但不能立即生效。

[ Last edited by tireless on 2009-7-11 at 06:18 ]
5 发表于 2008-01-02 21:49 ·  中国 广东 广州 天河区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
UID 74552
性别 男
状态 离线
利用call或start新建一个进程
6 发表于 2008-01-02 21:50 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
Originally posted by tireless at 2008-1-2 21:12:



我之前就是试了这个,但不能立即生效,命令行下输入set查看也看不到变化。。。

应该需要重启cmd,不行就重启explorer.exe,再不行就restart computer 。^_^
7 发表于 2008-01-02 21:56 ·  中国 广东 广州 天河区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
UID 74552
性别 男
状态 离线
8 发表于 2008-01-03 00:14 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
UID 96653
性别 男
状态 离线
-------------------------------------------------------------

[ Last edited by tireless on 2008-11-13 at 23:21 ]
9 发表于 2008-01-03 17:19 ·  中国 甘肃 平凉 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
wmic 修改后直接生效的

ENVIRONMENT - 系统环境设置管理
::获取temp环境变量
wmic ENVIRONMENT where "name='temp'" get UserName,VariableValue
::更改path环境变量值,新增e:\tools
wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;e:\tools"
::新增系统环境变量home,值为%HOMEDRIVE%%HOMEPATH%
wmic ENVIRONMENT create name="home",username="<system>",VariableValue="%HOMEDRIVE%%HOMEPATH%"
::删除home环境变量
wmic ENVIRONMENT where "name='home'" delete
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
tireless +4 2008-01-03 17:52
10 发表于 2008-05-27 13:36 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
UID 96653
性别 男
状态 离线

::更改path环境变量值,新增e:\tools
wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;e:\tools"


貌似应该把 ; 去掉,不去掉的话修改后会有两个;
11 发表于 2008-05-27 13:45 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
Originally posted by tireless at 2008-5-27 01:36 PM:


貌似应该把 ; 去掉,不去掉的话修改后会有两个;

这个取决于你的%path%在修改之前末尾有没有分号
我建议还是不要去掉这个分号
多一个分号没关系
但是少一个就出错了
12 发表于 2008-05-27 14:08 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
UID 96653
性别 男
状态 离线
@第 11 楼
不,我的path末尾没有分号,而修改时会自动添加分号。要不你试试

[ Last edited by tireless on 2008-5-26 at 06:13 PM ]
13 发表于 2008-05-27 17:12 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
我测试了一下,即使wmic命令里面有分号,也不会造成path里面两个分号。

环境:
XP SP2 EN
path末尾有分号
14 发表于 2008-11-13 16:06 ·  中国 北京 鹏博士BGP
初级用户
积分 22
发帖 21
注册 2008-11-13 13:44
UID 130844
性别 男
状态 离线
好,长见识!
15 发表于 2008-11-13 16:40 ·  中国 江苏 泰州 电信
初级用户
积分 43
发帖 39
注册 2008-11-13 12:52
UID 130838
性别 男
状态 离线
真的不错,丰富多彩的答案。
论坛跳转: