使用java执行bat、sh脚本文件

在工作中,由于需求,需要完成让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脚本文件


版权声明:本文为gxy6661159原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。