我正在尝试通过流程构建器运行以下命令: ls -lrt my-directory |尾巴-1
我在传入时使用bin / sh -c但是无法以任何方式让它工作。(我的自定义目录取决于函数并以字符串形式传入)
process builder("/bin/sh", "-c", "ls -lrt ", customDir, " | tail -1");
这给出了我运行程序的目录的内容。它好像我只是输入ls(甚至不是ls -lrt)。
两者
String temp = "ls -lrt " + customDir + " | tail -1";
process builder("/bin/sh ", "-c " temp);
String temp = "ls -lrt " + customDir;
process builder("/bin/sh ", "-c " temp, " | tail -1");
说即使我知道该目录也不存在。删除/ bin / sh -c只是给我一个错误,说它无法理解我理解的ls -lrt命令。但我根本不知道如何让它产生实际结果,如果我单独输入这个命令。
编辑:问题不在于我是如何调用流程构建器的。我将内容发送到另一个函数,该函数正确调用流程构建器并中继其输出。为简单起见,我只是在示例中说了流程构建器(...)。