Как передать параметры в командах сценария оболочки динамически? - PullRequest
0 голосов
/ 24 апреля 2019

Я хочу вызвать сценарий оболочки с помощью Java-программы и хотел бы динамически передавать параметры в одну из команд? Может кто-нибудь, пожалуйста, помогите мне с кодом Java.

1 Ответ

0 голосов
/ 24 апреля 2019

например ~

private void execShell(String scriptPath, String ... para) {
    try {
        String[] cmd = new String[]{scriptPath};
        cmd=ArrayUtils.addAll(cmd,para);

        ProcessBuilder builder = new ProcessBuilder("/bin/chmod", "755",scriptPath);
        Process process = builder.start();
        process.waitFor();

        Process ps = Runtime.getRuntime().exec(cmd);
        ps.waitFor();

        BufferedReader br = new BufferedReader(new InputStreamReader(ps.getInputStream()));
        StringBuffer sb = new StringBuffer();
        String line;
        while ((line = br.readLine()) != null) {
            sb.append(line).append("\n");
        }
        String result = sb.toString();

    } catch (Exception e) {
        e.printStackTrace();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...