Si desea utilizar las ventajas de las tuberías de Linux, puede hacerlo en Java.
Es posible que desee hacer lo siguiente, que es incorrecto.
String cmd = "ls" Process p = Runtime.getRuntime().exec(cmd); |
La forma correcta de ejecutar el comando de shell es la siguiente:
String[] cmd = { "/bin/sh", "-c", "ls" }; Process p = Runtime.getRuntime().exec(cmd); InputStream i = p.getInputStream(); byte[] b = new byte[16]; i.read(b, 0, b.length); System.out.println(new String(b)); |
En este ejemplo, el programa simplemente imprime las cadenas. Pero en el uso real, puede alimentarlo con algún proceso complicado.