Buscar
Social
Ofertas laborales ES

Soporte de javaHispano > Cómo obtener un dato de una salida de un comando ejecutado en DOS?

Cordial saludo para todos, soy principiante en java, estoy trabajando en un proyecto relacionado con redes, estoy ejecutando el comando ipconfig para poder obtener la direcciòn que tiene un equipo en cierto momento, cuando ejecuto el comando me aparece todo lo que aparece cuando se ejecuta el comando ipconfig, sòlo necesito capturar la ip, es decir, necesito capturar el valor de 192.168.0.2, o la iP que estè en el momento, estoy trabajando bajo el siguiente còdigo:


import java.io.*;

public class ipconfig {

public static void main(String args[]) {

String s = null;

try {

// Determinar el sistema operativo
String so = System.getProperty("os.name");

String comando;

// Comando para Linux
if (so.equals("Linux"))
comando = "ifconfig";

// Comando para Windows
else
comando = "cmd /c ipconfig";

// Se ejecuta el comando
Process p = Runtime.getRuntime().exec(comando);

BufferedReader stdInput = new BufferedReader(new InputStreamReader(
p.getInputStream()));

BufferedReader stdError = new BufferedReader(new InputStreamReader(
p.getErrorStream()));

// Se lee la salida del comando
System.out.println("Ésta es la salida standard del comando:\n");
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}

// Lectura de errores
System.out
.println("Errores a continuación:\n");
while ((s = stdError.readLine()) != null) {
System.out.println(s);
}

System.exit(0);
} catch (IOException e) {
System.out.println("Excepción: ");
e.printStackTrace();
System.exit(-1);
}
}
}

Gracias por su colaboración.

octubre 31, 2013 | Registered Commenterleodi81