我试图用java的ProcessBuilder执行以下命令的Java的ProcessBuilder - 如何执行xargs命令
ls | xargs cat > pathtonewFile
目前我的代码是
String command="ls | xargs cat >t"
ProcessBuilder probuilder = new ProcessBuilder(command);
probuilder.start()
目前这个执行没有错误,但一个新的文件不会被创建。
我根据这里另一职务如下尝试:Problem Using Java ProcessBuilder to Execute a Piped Command
ProcessBuilder probuilder = new ProcessBuilder("sh", "-c", "ls | xargs cat > pathtonewfile");
该命令执行,但创建一个0字节的文件。
这让我觉得这个问题很可能出现在您正在执行的命令中。尝试从shell提示符运行相同的命令。一种可能性是该命令正在使用错误的当前目录运行。 – 2012-08-16 02:44:16