我们正在努力从java swing UI执行shell命令。
我们需要执行一个命令来启动会话,一旦会话启动,我们需要重复执行一些常用命令。
我们可以使用以下命令执行命令。
Runtime.getRuntime().exec("setSession")
Runtime.getRuntime().exec("execute individual task");
这样,每当我们必须设置会话并执行各个任务时。
有没有办法执行一次命令(如setSession)并保留会话以执行剩余的命令?
答案 0 :(得分:0)
如果我的任务正确,您可能希望在底层系统上启动一个shell,获取它的输入和输出流并在那里发出您的命令。 虽然这使得您依赖于操作系统。但是你执行的命令可能无论如何。 类似的东西:
Process p = Runtime.getRuntime().exec("cmd.exe");
OutputStream outputStream = p.getOutputStream();
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(outputStream));
InputStream inputStream = p.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
writer.write("dir \n");
writer.flush();