【Java】bat批处理脚本实现 Java 环境的快速切换
前言
由于我因为不同的工作,经常要切换 Java 环境,手动切换非常难受,所以就去学了一下怎么写 bat 脚本,实现环境的快速切换,现在就分享一下我的方法和代码吧。
bat手册:https://blog.csdn.net/qq_43331089/article/details/124222342
bat基础
虽然上面给了 bat 手册,但是作为保姆级教程分享,我打算写点写这个脚本所需的 bat 基础,当然如果你是从我的另一篇文章
简介
bat文件,又称批处理文件,在DOS和Windows系统中,是一种可执行文件。
bat脚本编写
创建bat脚本,以及bat脚本调试的方法
流程就是创建一个 txt 文本,然后写入代码,后缀改为bat,然后双击运行。
但是这样调试起来很不方便,你必须改后缀为 txt ,然后修改代码,然后再改为 bat,如果运行出现错误,又要重新改回 txt...,当然如果你受得了可以这么做,但是受不了的话建议下载一个 VScode(或者其他轻量编译器),不需要任何环境,直接将bat文件拖入vsc就可以编写代码了,还可以运行调试(运行调试要配置过,但是你可以直接点击bat文件运行)。
bat基础代码
写bat代码,其实就是写DOS
下面的 rem 是bat的单行注释
rem 打印111
echo 111
rem 暂停
pause
rem 获取键盘输入
set /p name=请输入你的名字:
rem 输出name变量,bat脚本里变量外面要套%%
echo %name%
rem 声明变量
set a=1
rem 修改当前页面的编码格式为utf8,注意只有当前页面,这是临时的(其他编码有需要的话自己查)
chcp 65001
rem bat变量拼接(真就nm直接拼起来)
set a=1
set b=2
set c=%a%%b%
echo c
rem c=12
rem 字符串截取:使用固定的格式 %变量:~a,b%
rem bat转义字符
rem 对于%,直接写两个%%,表示一个“%”字符(别的转义自己查)
rem bat文件设置环境变量
rem SETX 永久设置用户环境变量
rem SETX /M 永久设置系统环境变量
rem SET 临时设置用户环境变量
rem SET /M 临时设置系统环境变量
rem 回显相关代码
@ 关闭单行回显
echo off 从下一行开始关闭回显
@echo off 从本行开始关闭回显。一般批处理第一行都是这个
echo on 从下一行开始打开回显
echo 显示当前是 echo off 状态还是 echo on 状态
rem ok了,其他的手册自己翻
好的,我们现在对基础代码有点印象了,那么怎么实现 Java 环境的快速切换呢,其实方法是很多的,如果真正会写的话,怎么写都行。
两种情况
1、环境变量已经大体配置好,写bat脚本
2、环境变量没配置好,写bat脚本
这里我只写第一种情况,环境变量配置好,写bat脚本。这种情况会很舒服,比较工整,代码逻辑也简单很多,那么环境变量怎么配置好呢?请参考我另一篇文章,
那么下面就是bat脚本,给了注释,看懂的话就能理解了,第二种情况也就能写出bat脚本了。我个人还是倾向第一种情况,会对这个环境变量的理解更深。
bat脚本内容
下面的逻辑如果看不懂,一定要对照我上面的另一篇文章去看!!!
@echo off
rem 设置此脚本的编码为utf8
chcp 65001
rem 输入version
set /p version=请输入你要更改到的Java环境:
rem 提示用户
echo '正在尝试改变环境至 Java %version%'
set a="JAVA_HOME"%version%
rem 下面的两个%% 是转义字符,相当于一个"%"字符
set b=%%%a%%%
rem 设置环境变量 JAVA_HOME -> %b% 这里b说白了就是 %JAVA_HOME18% 或者其他的...字符串
setx /M JAVA_HOME "%b%"
pause
直接复制到一个新的txt文件里,然后把后缀改成bat,但是注意:要右键以管理员身份运行!!!不然会报错,因为更改环境变量是需要管理员权限的!
运行结果