打开两个端子进行读写

时间:2017-11-02 19:10:11

标签: java terminal

如果我在OS本机终端(cmd.exe或xterm)中启动我的java程序,是否可以:

  1. 将当前的读/写终端保持为System.inSystem.out
  2. NewTerm.inNewTerm.out
  3. 打开另一个读/写终端

    就目前而言,我似乎只能打开第二个终端。我无法写信(我已尝试使用BufferedWriter)并且显示命令的唯一方法是,如果这些命令是以其开头发出的(即Runtime.getRuntime("xterm ls")ProcessBuilder(command).start();其中{{ 1}}是command)。

    我想保持两个端子打开,以便我可以比较它们的输出。顺序如下:

    • 在第一个终端中运行程序
    • Spawn第二终端
    • 在第一个终端发出命令
    • 在第二个终端发出命令
    • 读取第一个终端输出
    • 阅读第二终端输出

    这可能吗?

    以下是我打开新终端的方法,但在打开后无法写入:

    String[]

1 个答案:

答案 0 :(得分:1)

命令后需要行分隔符。

w.write("ls" + System.lineSeparator());