Запуск подключенного окна telnet cmd в Java - PullRequest
1 голос
/ 10 мая 2019

В настоящее время я пытаюсь создать приложение, которое будет подключаться к серверу telnet при запуске. В настоящее время я пытаюсь код, похожий на:

String ss = null;
Process p = Runtime.getRuntime().exec("cmd /c telnet localhost 4445");
BufferedWriter writeer = new BufferedWriter(new OutputStreamWriter(p.getOutputStream()));
writeer.write("telnet localhost 4445");
writeer.flush();
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));
System.out.println("Here is the standard output of the command:\n");
while ((ss = stdInput.readLine()) != null) {
    System.out.println(ss);
}

Однако это не открывает терминал, хотя я предполагаю, что он запускает нужную команду. Я хотел бы открыть терминал, выполнить команду, показанную во 2-й строке, а затем оставить терминал открытым для использования пользователем.

Есть ли способ сделать это? Я уже некоторое время пытаюсь, и никакие решения, которые я могу найти, на самом деле не дают желаемого результата.

1 Ответ

1 голос
/ 10 мая 2019

Привет, как насчет использования запуска,

 Runtime.getRuntime().exec("cmd /c start cmd.exe /K \"ping localhost && telnet localhost 4445\"");

Откроется новое окно. Но у вас не будет доступа к процессу, так как это отдельный процесс, инициированный exec.Все вы можете выполнять несколько команд.

...