如何使用Java重定向shell脚本的输出?

2022-02-27 00:00:00 shell bash linux sh java

我正在尝试使用Java在Linux(Ubuntu)中执行shell脚本,并尝试将输出重定向到另一个文件。

String cmd[] = {"sh", "-c", "my_dir/script.sh > new_dir/out.txt"};
Process pb = Runtime.getRuntime().exec(cmd);

但是,该用户不能正常工作。我无法将输出存储在out.txt文件中。 有没有人能建议一种正确做这件事的方法?


解决方案

这对我很有效。 使用Runtime.exec()

    Process p = Runtime.getRuntime().exec("my_dir/script.sh > new_dir/out.txt");
    // Wait for execution completion 
    p.waitFor();

相关文章