使用批处理命令设置环境变量
一般都是这样:
set PATH = %PATH%;D:\ytfy
此命令只对当前窗口有效,批处理一旦结束,变量就失效了。
DOS下设置永久环境变量 在打包软件的时候发现需要设置一个永久的环境变量,找了一下相关资料发现是使用setx这条命令。 如果想设置JAVA_HOME,则需执行如下命令即可:setx JAVA_HOME "C:\Program Files\LightenBSM Server\jdk1.6.0_16"在path中加入JAVA执行如下:setx Path "%Path%;%JAVA_HOME%\bin" 把以上命令保存成批处理运行即可实现永久环境变量的注册。这是针对当前用户,执行成功之后可以在我的电脑属性里面的高级 ,本用户的环境变量中查看。具体注册为哪个用户的可以查看帮助中有具体介绍。
经测试这么设置的环境变量是当前用户的环境变量。
装许多的行业软件的时候需要手动在系统里面加环境变量,比如oracle精简客户端等等。一台机器没什么,多了就费时费力还容易出错。
一般都是这样:
set PATH = %PATH%;D:\ytfy
此命令只对当前窗口有效,批处理一旦结束,变量就失效了。
常用此方法配置当前软件的运行环境,如在PL/SQL的启动时,使用批处理(bat)来启动他并配置Oracle的变量信息。
第二种:通过注册表设置,有点费解
参考此文
::添加环境变量JAVA_HOME
@echo off
echo 添加java环境变量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set evname=JAVA_HOME
set javapath=c:\java\jdk
reg add "%regpath%" /v %evname% /d %javapath% /f
pause>nul
::删除环境变量JAVA_HOME
@echo off
echo 删除java环境变量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set evname=JAVA_HOME
reg delete "%regpath%" /v "%evname%" /f
pause>nul
第三种:也是我比较喜欢的,类似第一种比较简单的命令
1.参考 在path中加入JAVA执行如下:setx Path "%Path%;%ORACLE_HOME%\bin"
这是针对当前用户,本用户的环境变量生效!
setx /M wu "%comspec%;c:\wu"
这个是系统环境变量
总结:
SETX 则用于设置用户环境变量和系统环境变量
- SET UsrVariable abc (设置用户环境变量 记录在HKEY_CURRENT_USER )
- SET /M OSVariable abc (设置系统环境变量 记录在HKEY_LOCAL_MACHINE)
主要参考(注意的是win vista及其纸上的windows版本都默认有setx工具,xp及其以下的windows系统是没有的)
2.参考
@echo offTHIRD_PARTY为环境变量名,<system>表示你添加的是系统环境变量,%~dp0表示批处理文件所在的文件夹,例如,你的bat文件在e:/MyProject/test.bat,则%0就是%~dp0是e:/MyProject/,%~dp0ThirdPartyLib就是e:/MyProject/ThirdPartyLib。
:: 设置第三方库环境变量THIRD_PARTY
wmic ENVIRONMENT create name="THIRD_PARTY",username="<system>",VariableValue="%~dp0ThirdPartyLib"
echo %THIRD_PARTY%