这个问题在这里已经有了答案:
8年前关闭。
以下代码:
ProcessBuilder pb = new ProcessBuilder(new String[] {"echo", "some text", ">", "test"});
不断返回“
some text > test
”。我究竟做错了什么?
编辑:
这有效
ProcessBuilder pb = new ProcessBuilder(new String[] {"bash", "-c", "echo sometext > test"});
最佳答案
尝试以下
ProcessBuilder pb =
new ProcessBuilder("cmd.exe", "/c" ,"echo", "some text", ">", "test");
这是用于 窗口 实际上,'Echo' 不是命令,它是 Windows 中的 shell(cmd.exe)的内部命令,也不是 linux 或 unix 中的“bash”。所以,对于 Unix/Linux
ProcessBuilder pb =
new ProcessBuilder("bash", "-c","echo \"some text\" >test");
关于java - 通过 Java 将 echo 的输出重定向到文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14561489/