在工作中,由于需求,需要完成让java去调用.bat文件和.sh文件的操作,接下来开始编码
此处用到了糊涂工具类
maven如下
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.10</version>
</dependency>
public void run(){
String file = "D:\\pan";
String cmd = "run";
Runtime runtime = Runtime.getRuntime();
Process exec = null;
if (FileUtil.isWindows()){
exec = runtime.exec("cmd /c cd " + file + " && " + cmd + ".bat");
}else {
exec = runtime.exec("bash " + cmd + ".sh",null,new File(file));
}
exec.waitFor();
//取得命令结果的输出流
InputStream is = exec.getInputStream();
//用一个读输出流类去读
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line = null;
while((line = br.readLine())!=null){
System.out.println(line);
}
is.close();
isr.close();
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
由此代码来执行bat或sh脚本文件(PS:糊涂工具包用不用无所谓,只是用来判断是否为windows系统的)