有些时候我们会在dos命令控制台执行一些命令操作,如果当一个或几个命令经常要重复执行的话,可以简单编写一个bat批处理文件来执行这些操作,批处理文件就会一行一行的执行你放进去的命令,你只要双击就能完成以前的操作
先来说下我这里的需求:最近写了一个小的接口程序,需要给到非计算机人员用,还要给到操作说明,由于使用人员对命令操作不熟悉,所以我想写一个bat文件给他执行就好了
我打包了一个jar包,放在指定目录下执行,命令很简单,如下:
@echo off
cd C:\XXX\XXX
java -jar customer.jar
cmd
简单说下:
@表示不显示本行命令,只对本行生效
echo off表示不显示该命令之后的后续命令
cd C:\XXX\XXX,进入我指定的目录
java -jar customer.jar,执行我的jar程序
cmd,加了这个程序或命令在报错的情况下不闪退,可以看到报错信息(不记得在哪里学的,反正有用就行)
其他说明:
① 在调试有错误的情况下就不要加@echo off,看下每条命令的执行情况,没问题再加上去。
② 命令中存在中文的情况下要保存ANSI编码,不然控制台执行时会乱码,用记事本编辑后另存为就可以选编码保存了,Notepad++等编辑器也可以转换编码。
③ 还是编码问题,这个百度好像很难查到,就是程序如果有响应信息,返回的信息是中文的话在控制台会乱码,然鹅,charset里是没有ANSI编码的,因为ANSI根本不是一个具体的编码,那怎么办。通过一些资料查到,中文简体编码GB2312,实际上它是ANSI的一个代码页936,欸 我们来试试行不行
在接口上设置字符编码
@RequestMapping(value="/xxx",produces = {"application/json;charset=GB2312"})
ok,执行一下是可以的
其他需求下有需要也可以试下写个bat去处理,实用为主