一些程序以用户体验的方式向 bash 生成输出,例如更改值的字符串而不是打印的行(bash 向下滚动以能够显示所有更改的输出)。这种现象叫什么?它是如何在例如 java 程序或 bash 脚本中实现的。如何解析输出?它只是打印新行但使用一些特殊功能吗?
top 是一个使用这种输出数据“现象”的程序
使用 Okey 光标。
那么我如何在java中解析它们呢?我试过这段代码,但它没有打印任何东西
public static void exeTest(String [] args) throws IOException{
if (args.length <= 0) {
System.out.println("empty command");
return;
}
Process process = new ProcessBuilder(args).start();
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
System.out.printf("Output of running %s is:",
Arrays.toString(args));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
感谢所有好的答案,我现在对这个主题更加熟悉,即使你我仍然无法解析像 java 中的顶部那样的程序输出。我会结束这个问题,并就如何在 java 中解析这个问题做更多的研究。然后我可能会开始另一个更具体的关于在 java 中解析输出的内容。