Board logo

标题: [系统相关] 批处理新添加一个系统环境变量需要重启才能调用吗? [打印本页]

作者: raozhao2008    时间: 2008-10-3 12:42     标题: 批处理新添加一个系统环境变量需要重启才能调用吗?

本帖最后由 raozhao2008 于 2015-9-23 14:47 编辑

新添加一个系统变量,需要重启才能调用吗?
作者: everest79    时间: 2008-10-3 13:33

不用重启电脑,若是在CMD下,需要重启CMD或用call调用
作者: zqz0012005    时间: 2008-10-3 20:40

1、修改注册表的方法要重启才生效(永久的)
  1. reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path /d "%path%;C:\" /f
复制代码
2、使用WMIC,立即生效(永久的)
  1. wmic ENVIRONMENT where "name='path' and username='<SYSTEM>'" set VariableValue='%path%;C:\'
复制代码
3、要在批处理中立即生效(只是临时的,退出批处理后消失),P中加一句:
  1. path=%path%;C:\
复制代码

作者: Batcher    时间: 2008-10-3 20:41

用reg写注册表的方法需要重启,用wmic不需要重启。
作者: raozhao2008    时间: 2008-10-4 11:24     标题: 回复 2楼 的帖子

call 怎样调用系统变量?
作者: raozhao2008    时间: 2008-10-4 11:25     标题: 回复 3楼 的帖子

  1. wmic ENVIRONMENT where "name='path' and username=''" set VariableValue='%path%;C:\'
复制代码

上面代码只是更新path的值
如果变量path不存在,就会出现“无可用范例”
是吗?
如果是,那该怎样新添加一个系统变量并且不用重启而直接调用

[ 本帖最后由 raozhao2008 于 2008-10-4 11:31 编辑 ]
作者: Batcher    时间: 2008-10-4 11:37     标题: 回复 6楼 的帖子

  1. wmic ENVIRONMENT create name="home",username="<system>",VariableValue="%HOMEDRIVE%%HOMEPATH%"
复制代码

作者: raozhao2008    时间: 2015-9-23 14:37

回复 7# Batcher


    win7系统中用着命令好像不能立即生效
作者: Batcher    时间: 2015-9-23 22:23

回复 8# raozhao2008


    当前cmd需要单独set
作者: CrLf    时间: 2015-9-24 11:45

本帖最后由 CrLf 于 2015-9-24 11:49 编辑

可以用第三方向其他进程发送消息
http://www.bathome.net/s/tool/index.html?key=%E5%8F%98%E9%87%8F




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2