java 程序执行linux脚本


方式一

import java.io.IOException;

public class Test {

    public static void main(String[] args){
        String cmd ="./test.sh";
        System.out.println(cmd);
        try {
            Runtime.getRuntime().exec(cmd);
        } catch (Exception e) {
            System.err.println(e.getMessage());
        }
    }

}

  

方式二

@RestController
@RequestMapping("/converter")
public class PDFController {

    private static String shellFile="/home/appData/shell/word2pdf.sh";
    private static String shellDir="/home/appData/shell/";
    private static String targetDir="/home/appData/";
    private static String sourceFileName="target.docx";
    private static String targetFileName="target.pdf";

    @PostMapping("/converterToPdf")
    public byte[] wordToPdf(@RequestBody byte[] sourceByte){
        byte2File(sourceByte,targetDir,sourceFileName);
        ProcessBuilder processBuilder=new ProcessBuilder(shellFile,sourceFileName);
        processBuilder.directory(new File(shellDir));
        try {
            Process p = processBuilder.start();
            try {
                p.waitFor();
            } catch (InterruptedException e) {
              throw new RuntimeException(e.getMessage());
            }
        } catch (IOException e) {
            throw new RuntimeException(e.getMessage());
        }
        byte[] targetByte = file2byte(targetDir + targetFileName);
        return targetByte;
    }

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM