[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [已解决]批处理新建和追加环境变量并判断是否已存在该值?

如果已经存在该值(包括变量名和变量值)就跳过,如果不存在该值就自动新建或追加。

修改环境变量

我们首选需要对电脑进行环境变量的设置

[attach]5302[/attach]
右键点击我的电脑-属性

[attach]5303[/attach]
高级-环境变量(WindowsXP) 高级系统设置-高级-环境变量(Windowns7)
[attach]5304[/attach]

点击新建.。.添加下面这两个变量
变量名:JAVA_HOME
变量值:Crogram FilesJavajdk1.6.0_10

[attach]5305[/attach]
变量名:classpath

变量值:.;%JAVA_HOME%lib;(注意符号)
[attach]5306[/attach]

还有一个环境变量Path,系统默认已经出现,在系统变量下找到这个变量,点击编辑。

[attach]5307[/attach]
在已经有的变量值前面,加入下面这个变量
C:Program FilesJavajdk1.6.0_10in;   (注意包括“;”)


上面这个过程,我想利用批处理来实现,求高手弄个比较完美的批处理
1

评分人数

    • zqz0012005: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 wh1234567 于 2012-6-9 00:48 编辑

在线等......
另外问下:
变量值:Crogram FilesJavajdk1.6.0_10

变量值:C:\Program Files\Java\jdk1.6.0_10
效果相同吗?我见这2种都有人写,不知道正确的应该是哪个对?

TOP

本帖最后由 wh1234567 于 2012-6-3 23:58 编辑

回复 15# apang

嗯,我看了,这次能正常运行了,总感觉不如我说的那种直观一点,修改下是最好不过了,呵呵呵

TOP

回复 14# wh1234567

13楼,再试一次。看下面的图,wmic本身有提示的,还用得再显示提示?

TOP

本帖最后由 wh1234567 于 2012-6-3 23:11 编辑

回复 13# apang
闪了一下就自动退出了,好像显示“错误”的字样,不知道为什么

这3个都是在环境变量里的系统变量里设置的。
另外,如果这3个变量名和变量值分别存在的话就跳过并提示某某变量名和某某变量值已经存在无需设置,分别都提示,判断没的话就自动新建(追加)并显示“某某某新建或追加成功!”
不存在就处理并显示例如:
【变量名:JAVA_HOME    变量值:Crogram FilesJavajdk1.6.0_10】新建成功!
【变量名:classpath    变量值:.;%JAVA_HOME%lib;】新建成功!
【变量名:Path    变量值:C:Program FilesJavajdk1.6.0_10bin;】追加成功!
如果存在就显示例如:
【变量名:JAVA_HOME    变量值:C:Program FilesJavajdk1.6.0_10】已经存在无需设置!
【变量名:classpath    变量值:.;%JAVA_HOME%lib;】已经存在无需设置!
【变量名:Path    变量值:C:Program FilesJavajdk1.6.0_10bin;】已经存在无需设置!

TOP

本帖最后由 apang 于 2012-6-3 23:19 编辑
  1. @echo off
  2. wmic environment create name="JAVA_HOME",username="<system>",variablevalue="C:\Program Files\Java\jdk1.6.0_10"
  3. wmic environment create name="classpath",username="<system>",variablevalue=".;%%JAVA_HOME%%\lib;"
  4. wmic environment where (name="path" and username="<system>") get variablevalue|findstr /ic:"C:\\Program Files\\Java\\jdk1\.6\.0_10\\bin">nul
  5. if "%errorlevel%"=="0" echo "C:\Program Files\Java\jdk1.6.0_10\bin"路径已存在&pause&goto :eof
  6. wmic environment where (name="path" and username="<system>") set variablevalue="C:\Program Files\Java\jdk1.6.0_10\bin;%path%"
  7. pause
复制代码

TOP

求高手帮我写个批处理吧

TOP

本帖最后由 wh1234567 于 2012-6-3 13:40 编辑

批处理设置环境变量:
其实也就是新建添加下面这两个变量和追加Path

变量名:JAVA_HOME
变量值:Crogram FilesJavajdk1.6.0_10

变量名:classpath
变量值:.;%JAVA_HOME%lib;

追加环境变量Path
在已经有的变量值前面,加入下面这个变量
C:Program FilesJavajdk1.6.0_10bin;

不知道能不能实现,高手们给弄个代码吧

TOP

高手们给弄个代码吧,小弟在此感谢了

TOP

快下班呀,举个例子,根据需要还得修改。
  1. if defined CLASSPATH set "CLASSPATH=%CLASSPATH%.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar" else set "CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar"
  2. set path=C:\Program Files\Javajdk1.6.0_10\bin; %path%
复制代码

TOP

本帖最后由 wh1234567 于 2012-5-24 11:58 编辑

批处理设置环境变量:
其实也就是新建添加下面这两个变量和追加Path

变量名:JAVA_HOME
变量值:Crogram FilesJavajdk1.6.0_10

变量名:classpath
变量值:.;%JAVA_HOME%lib;

追加环境变量Path
在已经有的变量值前面,加入下面这个变量
C:Program FilesJavajdk1.6.0_10in;

不知道能不能实现,高手们给弄个代码吧

TOP

回复 3# fatcat


    不要奢望了,除了直接给完整代码,楼主自己搞不定的。

TOP

回复 5# apang


    这是我在网上看到的,原作者就是这样写的,我估计那个圆点是bin,不知道对不对

TOP

变量值:Crogram FilesJavajdk1.6.0_10
C:Program FilesJavajdk1.6.0_10in;   (注意包括“;”)

有你这样写的吗?发帖都不仔细,没人会帮你

TOP

图片可显示了

TOP

返回列表