我正在尝试使用以下命令提取文件中最常用行的频率:
sort file.txt | uniq -c | sort -r | head -1| xargs
我试图在java程序中使用processbuilder类来完成。下面是我传递给它的构造函数的方法:
ProcessBuilder builder=new ProcessBuilder("/bin/sh", "-c","sort",fileName,"| uniq -c | sort -r | head -1 | xargs");
当我运行程序时,它只会停止执行超过这一行。没有错误,但程序就停在这一行。我做错什么了?
谢谢!
最佳答案
尝试将文件名直接包含到命令中:
ProcessBuilder builder=new ProcessBuilder("/bin/sh", "-c","sort " + fileName + " | uniq -c | sort -r | head -1 | xargs");
关于java - 使用Java中的ProcessBuilder运行流水线命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43429355/