在 Java 中启动连接的 telnet cmd window
Starting a connected telnet cmd window in Java
我目前正在尝试制作一个在启动时连接到 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);
}
但是,这不会打开终端,尽管我假设它运行所需的命令。我想打开一个终端,完成一个命令,显示在第二行,然后让终端打开供用户使用。
有办法吗?我已经尝试了一段时间,但我找不到真正能提供所需输出的解决方案。
嗨,使用开始怎么样,
Runtime.getRuntime().exec("cmd /c start cmd.exe /K \"ping localhost && telnet localhost 4445\"");
将打开一个新的window。但是您将无权访问该进程,因为它是由 exec.Still 启动的不同进程,您可以执行 multip 命令。
我目前正在尝试制作一个在启动时连接到 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);
}
但是,这不会打开终端,尽管我假设它运行所需的命令。我想打开一个终端,完成一个命令,显示在第二行,然后让终端打开供用户使用。
有办法吗?我已经尝试了一段时间,但我找不到真正能提供所需输出的解决方案。
嗨,使用开始怎么样,
Runtime.getRuntime().exec("cmd /c start cmd.exe /K \"ping localhost && telnet localhost 4445\"");
将打开一个新的window。但是您将无权访问该进程,因为它是由 exec.Still 启动的不同进程,您可以执行 multip 命令。