Ejecucion de Comandos Windows desde Java

cmd y java

En algún momento de nuestra vida como Programadores Java necesitaremos ejecutar algún comando interno del Sistema Operativo o quizás ejecutar algún archivo por lotes o script.
Esta tarea en Java resulta muy sencilla y ademas podemos hacer una ejecución silenciosa del comando o captar su salida para informar al usuario.

Como siempre digo… menos teoría y más practica. Si queremos hacer la ejecución básica y “silenciosa” de un comando tan solo deberemos llamar al objeto Process de Java y decirle que ejecute el comando de la siguiente forma:

try {
	Process proceso = Runtime.getRuntime().exec("cmd /c whoami");
} catch (IOException e) {
        e.printStackTrace();
}

Se ve  fácil no?

Realmente no tiene nada de complicado, pero…  ¿y si queremos mostrar al usuario la salida del comando?
Pues es muy sencillo tan solo deberemos utilizar las clases InputStreamReader y BufferedReader de la siguiente forma, a continuación os dejo el código completo del programa para que veas que es muy fácil de utiliza.

import java.io.*;
public class Comandos {
	public static void main(String[] args) {

        String salida = null;
        String comando = "cmd /c tree";

        try{

            // Ejecucion Basica del Comando
            Process proceso = Runtime.getRuntime().exec(comando);

            InputStreamReader entrada = new InputStreamReader(proceso.getInputStream());
            BufferedReader stdInput = new BufferedReader(entrada);

            //Si el comando tiene una salida la mostramos
            if((salida=stdInput.readLine()) != null){
            	System.out.println("Comando ejecutado Correctamente");
            	while ((salida=stdInput.readLine()) != null){
                	System.out.println(salida);
                }
            }else{
            	System.out.println("No se a producido ninguna salida");
            }
        }catch (IOException e) {
                System.out.println("Excepción: ");
                e.printStackTrace();
        }
	}
}

Y esto es todo, tan fácil y sencillo, espero que os haya gustado, y no te olvides de Compartir en las redes Sociales

Puedes encontrar más Artículos sobre Programación Java – Aqui

9 comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *