如果java想调用Linux的管道命令例如 ls -l / | grep "^l"
如果使用下面的方法执行
Runtime rt = Runtime.getRuntime();
rt.exec(cmd);
其实它只执行了ls -l命令
如果想正确执行管道命令请选择使用下面的方法
Runtime rt = Runtime.getRuntime();
rt.exec(new String[] {"/bin/sh", "-c", cmd});
如果java想调用Linux的管道命令例如 ls -l / | grep "^l"
如果使用下面的方法执行
Runtime rt = Runtime.getRuntime();
rt.exec(cmd);
其实它只执行了ls -l命令
如果想正确执行管道命令请选择使用下面的方法
Runtime rt = Runtime.getRuntime();
rt.exec(new String[] {"/bin/sh", "-c", cmd});