首页 > 编程 > BAT > 正文

通过批处理bat设置系统环境变量的实现代码

2020-07-26 20:14:30
字体:
来源:转载
供稿:网友

bat代码

set JAVA_HOME=C:/Program Files/Java2/jdk1.6.0_45set PATH=%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin set CLASSPATH=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar; start """F:/Program Files (x86)/Jaspersoft/iReport-5.6.0/bin/ireport.exe"

上面代码存为.bat,双击运行即可;如果还是加载不成功的话,检查一下ireport安装目录下,etc目录的ireport.conf中的jkdhome的路径是否是正确的

# ${HOME} will be replaced by user home directory according to platformdefault_userdir="${HOME}/.${APPNAME}/5.6.0"default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/5.6.0"# options used by the launcher by default, can be overridden by explicit# command line switchesdefault_options="-J-Xms256m -J-Xmx512m -J-Dorg.netbeans.ProxyClassLoader.level=1000 -J-XX:MaxPermSize=512m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dnetbeans.exception.report.min.level=99999 "# for development purposes you may wish to append: -J-Dnetbeans.logger.console=true -J-ea# default location of JDK/JRE, can be overridden by using --jdkhome <dir> switchjdkhome="C:/Program Files/Java2/jdk1.6.0_45"# clusters' paths separated by path.separator (semicolon on Windows, colon on Unices)#extra_clusters=ireport.conf

在软件运行过程中,可能需要配置计算机的环境变量,在这里分为两种情况:

一:增加或修改环境变量只在当前软件环境中使用

如我们设置Java的环境变量:

set CLASSPATH=%CLASSPATH%;C:/LS/JAVA.JAR
保持原有的不变  自己加上要加的jar包,用分号隔开,当然你也可以写到前面,如:set CLASSPATH=D:/My_Path;%CLASSPATH%
set JAVA_HOME=  这里的路径自己写吧
不过这样写只对你打开的这个dos窗口有效,也就是你只有在这个窗口用java等命令,才会找到你才设的变量JAVA_HOME等
如果想看看是否设置成功可以用:echo %JAVA_HOME%

常用此方法配置当前软件的运行环境,如在PL/SQL的启动时,使用批处理(bat)来启动他并配置Oracle的变量信息,网上这种代码很多就不贴出来了,需要的自己去搜索。

二:通关注册表永久性的保存设置或增加的环境变量

以下是我从网上找的代码,很简单,如果你看不懂的,再给我留言吧:

实例一:批处理设置系统环境变量

::添加环境变量JAVA_HOME@echo offecho 添加java环境变量set regpath=HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Environmentset evname=JAVA_HOMEset javapath=c:/java/jdkreg add "%regpath%" /v %evname% /d %javapath% /fpause>nul  ::删除环境变量JAVA_HOME@echo offecho 删除java环境变量set regpath=HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Environmentset evname=JAVA_HOMEreg delete "%regpath%" /v "%evname%" /fpause>nul


实例二:先判断该环境变量是否已经存在,如果不存在则添加该环境变量。

@echo off @set Path_=D:/Program Files for,/f,"skip=4 tokens=1,2,*",%%a,in,('reg query "HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Control/Session Manager/Environment" /v Path'),do,(  @set PathAll_=%%c ) echo %PathAll_%|find /i "%Path_%" && set IsNull=true|| set IsNull=false if not %IsNull%==true (   reg add "HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Control/Session Manager/Environment" /v Path /t REG_EXPAND_SZ /d "%PathAll_%;%Path_%" /f )pause

对于实例一和实例二是从简单到复杂的过程,主要是拍有些人对代码的理解程度不同。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表