我通常使用java.lang.ProcessBuilder和java.lang.Process来运行外部命令行程序,对于一次性的运行命令很好用。例如,这将在工作目录中运行带有参数“myArg”的“myProgram”:
List<String> commandLine = new ArrayList<String>();
commandLine.add("myProgram");
commandLine.add("myArg");
ProcessBuilder builder = new ProcessBuilder(commandLine);
builder.redirectErrorStream(true);
Process process = builder.start();
然而,假设我想要运行一个拥有交互式输入的脚本、程序或其他内容(在启动后提示我输入更多内容)。我能否使用类似上面的代码在Java中实现此功能,还是需要使用不同的方法?或者是否有一些库可以帮助我实现这一点?
/usr/bin/vi
,它的表现正如我所希望的那样。 - Christopher Schultz