将xterm与java结合使用

将xterm与java结合使用,java,linux,xterm,Java,Linux,Xterm,首先,我发现了很多关于xterm和java的问题,但没有任何问题能直接解决我的问题 我有什么问题? 我想从java启动一个xterm终端,并向这个终端发送命令。 首先,我只想更改目录,但它不起作用。但重要的是,我不知道程序开始时的所有命令,因此建议我可以在运行时向终端发送命令 这是我的密码: String[] command= {"xterm"}; Runtime rt = Runtime.getRuntime(); Process pr = rt.exec(command

首先,我发现了很多关于xterm和java的问题,但没有任何问题能直接解决我的问题

我有什么问题? 我想从java启动一个xterm终端,并向这个终端发送命令。 首先,我只想更改目录,但它不起作用。但重要的是,我不知道程序开始时的所有命令,因此建议我可以在运行时向终端发送命令

这是我的密码:

String[] command= {"xterm"}; 
    Runtime rt = Runtime.getRuntime();  
    Process pr = rt.exec(command);

    Thread.sleep(2000);

    BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
    ReadThread input = new ReadThread(in);
    input.start();

    BufferedReader error = new BufferedReader(new InputStreamReader(pr.getErrorStream()));
    ReadThread inputError = new ReadThread(error);
    inputError.start();

    PrintWriter printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(pr.getOutputStream())),true);
    printWriter.println("cd /home/***/sipp/sipp-3.3\n");
    Thread.sleep(2000);

    input.die();
    inputError.die();
    printWriter.close();
    error.close();
    in.close();
    pr.destroy();
我认为终端会在2秒钟后打开(它会),并将目录更改为sipp-3.3。再过2秒钟,xterm应该关闭(确实如此)。 但问题是,我的命令不起作用? 求你了,我不想找到这样的解决办法

String [] gggg = {"xterm", "-c", "multiple commands, with |, &&, ; etc"};
rt.exec(gggg);
因为有了这样的解决方案,我无法向终端发送更多的命令。
非常感谢

为什么不直接启动命令而不使用xterm?那么“我的命令不起作用”是什么意思?您希望发生什么?xterm的目的是,用户可以在终端内看到发生了什么,并且可以手动与终端交互。此外,我想启动一个程序
(sipp)
,它需要一个终端作为背景。我希望可以在xterm中看到更改的目录。这样我就可以继续开始这个节目了