Я пытаюсь захватить поток ошибок процесса, но поток пуст, несмотря на появление сообщения об ошибке. < /p>
Это то, что я попробовал. Если файл .ksh < /code> отсутствует, сообщение об ошибке отображается с таким файлом или каталогом »из Bash, но это сообщение нет в потоке ошибок.
Как я могу получить это сообщение? < /P>
try {
String[] command = {"bash", "test123.ksh"};
Process process = new ProcessBuilder(command)
.inheritIO()
.start();
StringBuilder stdErr = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String line;
while ((line = reader.readLine()) != null) {
stdErr.append(line);
stdErr.append("\n");
System.out.println(line);
}
process.waitFor();
} catch (IOException | InterruptedException e) {
throw new RuntimeException(e);
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... ash-script