最新消息:点击查看大S的省钱秘笈

XP下通过 命令行/批处理 修改环境变量

电脑技巧 Slyar 137浏览 0评论

文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。

恩,我猜你应该在研究这个,随便写几句话给你看吧。

XP系统的环境变量都是保存在注册表里的,所以如果想要通过命令行或者是批处理来修改环境变量,就需要知道它保存在注册表的哪个地方。

PS.CMD命令可以通过set直接修改环境变量,但那只是一次性的,系统重启后就无效了,这也是为什么要直接修改注册表的原因。

系统环境变量空间的注册表项保存位置为:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

当前用户环境变量空间的注册表项保存位置为:

HKEY_CURRENT_USER\Environment

有了这个东西,我们就可以利用CMD的reg命令来修改注册表了,关于reg命令,你可以自己去Google一下,用法很多。

你可以把修改环境变量的CMD语句写进批处理,当然你也可以使用C语言的system("命令");语句把它写成一个小程序。

这里我写三条语句来修改JDK的环境变量

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Java_Home /t reg_sz /d "%cd%" /f

这条语句是增加Java_Home环境变量,变量的值是这个批处理所在的路径。所以,将这三条语句写成批处理后,只要把批处理文件放置到JDK的安装目录下,即可一次性配置好环境变量。

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v ClassPath /t reg_expand_sz /d ".;%Java_Home%\lib\dt.jar;%Java_Home%\lib\tools.jar;%Java_Home%\lib\htmlconverter.jar" /f

这条语句是增加ClassPath环境变量

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path /t reg_expand_sz /d ".;%path%;%Java_Home%\bin" /f

这条语句是修改Path环境变量,要使用%path%来读取之前的Path变量,否则会清空原来的Path变量

有了核心内容,其他的修饰就很随意了,交给你来办啦,嘿嘿。

恩,结合这篇文章看吧《常用系统环境变量的含义》

2009.10.02 重要修改:

最近在使用批处理的时候总是不能一次成功,刚才仔细研究了一下才发现一系列很重要的问题!

1、批处理会自动转换%variable%变量

2、使用reg命令修改注册表时,如果%variable%存在有效值,则自动替换%variable%;如果%variable%不存在,那么保持原样输出

实验了很多次才发现这两条关键性问题,懂不懂无所谓了,我懂了就行。如果想要成功使用批处理修改,必须修改2条。第一是批处理中的%必须使用转义字符%%维持变量符号,第二是必须最后倒入Java_Home,这样前面调用%Java_Home%的时候才不会自动转换变量。总之,最后有效的批处理是这样的:

@reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v ClassPath /t reg_expand_sz /d ".;%%Java_Home%%\lib\dt.jar;%%Java_Home%%\lib\tools.jar;%%Java_Home%%\lib\htmlconverter.jar" /f

@reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path /t reg_expand_sz /d ".;%path%;%%Java_Home%%\bin" /f

@reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Java_Home /t reg_sz /d "%cd%" /f

使用方法:将上面的代码保存为jdk.bat,然后放置到JDK安装目录下!!!双击即可完成环境变量的配置。

转载请注明:Slyar Home » XP下通过 命令行/批处理 修改环境变量

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (4)

  1. 同感
    1231年前 (2015-09-03)回复
  2. 我照着写了一个批处理文件用于不同版本的jdk快速切换,但是出现了个奇怪的现象,环境变量里的值是变了。但是运行cmd后查看jdk的版本,却没发生变化。但是到环境变量的修改页面,什么也不改直接点保存。然后批处理文件修改的内容才能生效。
    飞车兔5年前 (2011-08-18)回复
  3. win7下注册表都变了,是否有兼容win7和xp的bat呢?
    wupei6年前 (2011-04-13)回复