DOS 系统是Windows 系统非常经典的命令行系统(要不然也不会流传到今天而且更新很少)。需要系统的去学习吗,个人认为不必,如果你接触了Linux 就很容易接受CMD窗口的模式;
有些命令比如ifconfig/ipconfig ping等都很类似;
言归正传,设置Java环境变量有很多种这里只引用SETX/REG两个命令完成;
设置定义环境变量路径
Windows 的环境变量是保存在注册表中的所以无论怎么样都要先把环境变量的注册表路径定义好:
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set 就跟js的var一样定义一个变量;
BAT文件基本语法
@echo off 从本行开始关闭回显,一般批处理第一行都是这个
title 设置cmd窗口的标题
pause>nul #让当前进程的暂停一下,并显示:请按任意键继续. . . 用>nul 把这个信息隐藏
set 查看环境变量
set 参数名=参数值 设置变量
SETX方式(xp不支持)
具体Windows哪个版本支持不太清楚,但XP 测试过不支持该命令。既然支持性有待考量 将测试脚本直接放出供大家借鉴吧!
@echo off
title 配置Java环境变量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set javahome=C:\Program Files\Java\jdk1.7.0_80
setx "JAVA_HOME" "%javahome%" -M
setx "classPath" "%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%%\lib\dt.jar;." -m
rem 追加到path 路径
setx path "%%JAVA_HOME%%\bin;%path%" -m
echo === 请按任意键退出!
pause>nul
REG 注册表命令模式(通用格式)
@echo off
color 0a
echo 配置java环境变量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set evname=JAVA_HOME
set javapath=C:\Program Files\Java\jdk1.7.0_80
reg add "%regpath%" /v %evname% /d %javapath% /f
echo 配置Path变量
reg add "%regpath%" /v "PATH" /d "%PATH%;%%JAVA_HOME%%\bin;" /f
pause>nul
exit
最后,思考一个问题 你为什么要自动化配置环境变量
你可能是
- 配置了一个集成环境;
- 一键部署项目;
- 安装程序需要;