как убить runtime.exec?

Я использую приведенный ниже код в моем jframe для выполнения сценария оболочки через java-программу, но когда я реализую другой метод, чтобы остановить выполнение процесса, этот метод сначала блокируется, и я могуОстановите мою программу. Поэтому я убиваю новый процесс, проблема в том, как получить pid процесса и как поместить его в фоновый режим, чтобы убить его.

public static void execShellCmd(String cmd) {
    try {

        testPath = getPath();

        System.out.println(cmd);
        Runtime runtime = Runtime.getRuntime();
        process = runtime.exec(new String[] { "sh",
                testPath + "/install.sh", cmd, "&" });
        int exitValue = process.waitFor();
        value = exitValue;
        System.out.println("exit value: " + exitValue);
        BufferedReader buf = new BufferedReader(new InputStreamReader(
                process.getInputStream()));
        String line = "";
        BufferedWriter bufferedWriter = null;
        while ((line = buf.readLine()) != null) {
            System.out.println("exec response: " + line);
            log = line;
            writeToFile(line);
        }
    } catch (Exception e) {
        System.out.println(e);
    }
}

Ответы на вопрос(2)

Ваш ответ на вопрос