0
点赞
收藏
分享

微信扫一扫

Java执行shell脚本

要在Java程序中调用Shell脚本,可以使用Runtime类或ProcessBuilder类来执行Shell命令。以下是两种常用的方法:

  1. 使用Runtime类:

import java.io.*;

public class ShellCommand {
    public static void main(String[] args) {
        try {
            // 执行Shell命令
            Process process = Runtime.getRuntime().exec("sh /path/to/your/script.sh");

            // 获取命令输出流
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                // 处理输出结果
                System.out.println(line);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

/path/to/your/script.sh替换为你实际的Shell脚本路径。这段代码将执行指定的Shell脚本,并打印出其输出。

  1. 使用ProcessBuilder类:

import java.io.*;

public class ShellCommand {
    public static void main(String[] args) {
        try {
            // 构建Shell命令
            ProcessBuilder processBuilder = new ProcessBuilder("sh", "/path/to/your/script.sh");
            processBuilder.redirectErrorStream(true);

            // 执行Shell命令
            Process process = processBuilder.start();

            // 获取命令输出流
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                // 处理输出结果
                System.out.println(line);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

同样,将/path/to/your/script.sh替换为你实际的Shell脚本路径。这段代码使用ProcessBuilder类构建并执行Shell命令,并输出其结果。

举报

相关推荐

0 条评论