我正在尝试使用Java代码从UNIX命令中计算文本文件的行数。
我的代码如下:
String filePath = "/dir1/testFile.txt";
Runtime rt = Runtime.getRuntime();
Process p;
try {
System.out.println("No: of lines : ");
findLineCount = "cat " + filePath + " | wc -l";
p = rt.exec(findLineCount);
p.waitFor();
} catch (Exception e) {
//code
}
但是,控制台没有显示任何内容。当我直接执行命令时,它可以正常工作。以上代码可能出了什么问题?
wc -l filePath
? - user289086cut
命令操作一行并获得答案时(链接),通过调用cat读取整个文件并将其塞入管道(在大文件上可能非常昂贵)有些浪费。 - user289086