一尘不染

如何从Java调用Linux Shell命令

java

我正在尝试使用重定向(>&)和管道(|)从Java执行一些Linux命令。Java如何调用cshbash命令?

我试图用这个:

Process p = Runtime.getRuntime().exec("shell command");

但是它与重定向或管道不兼容。


阅读 670

收藏
2020-03-05

共1个答案

一尘不染

exec在你的shell中不执行命令

尝试

Process p = Runtime.getRuntime().exec(new String[]{"csh","-c","cat /home/narek/pk.txt"});

代替。

编辑::我的系统上没有csh,所以我改用bash。以下为我工作

Process p = Runtime.getRuntime().exec(new String[]{"bash","-c","ls /home/XXX"});
2020-03-05