Foro de elhacker.net

Programación => Java => Mensaje iniciado por: LuisCaTre en 23 Enero 2018, 03:31 am



Título: Comandos CMD desde Java
Publicado por: LuisCaTre en 23 Enero 2018, 03:31 am
Bueno, hace tiempo hice un programa en Python muy básico que ejecuta comandos del CMD, para ello use la función os.system("comando").

Hay algún método o clase que haga lo mismo??, Y si es así, cual es?

Gracias por su ayuda.

Enviado desde mi M1092R mediante Tapatalk


Título: Re: Comandos CMD desde Java
Publicado por: engel lex en 23 Enero 2018, 03:34 am
literalmente los primeros 3 aqui (http://bfy.tw/GBjb)


Título: Re: Comandos CMD desde Java
Publicado por: rub'n en 23 Enero 2018, 07:05 am
Un ejemplo que puede servir, básico, se te abrira la cmd,  :P pero eso se puede ajustar para lo que deseas.
Código
  1. import javax.swing.*;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5.  
  6. public class Main {
  7.  
  8.    private final JTextArea area = new JTextArea();
  9.  
  10.    public Main() throws IOException, InterruptedException {
  11.        init();
  12.    }
  13.    private void init() throws IOException, InterruptedException {
  14.        final String cmd[] = new String[3]; // 3 posiciones para los comandos separados
  15.        cmd[0] = "cmd";
  16.        cmd[1] = "/c";
  17.        cmd[2] = "start";
  18.  
  19.        Process p = Runtime.getRuntime().exec(cmd); //tambien sirve new String[]{"cmd","/c","start"};
  20.        p.waitFor();
  21.        try(BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
  22.            final StringBuilder sb = new StringBuilder();
  23.            String data = "";
  24.            while( (data = r.readLine() ) != null) {
  25.                sb.append(data);
  26.                sb.append("\n");
  27.            }
  28.            println(sb.toString());
  29.            area.setText(sb.toString());
  30.        }
  31.        JOptionPane.showMessageDialog(null,area,"Informacion",1);
  32.    }
  33.    static void println(final String s) {System.out.println(s); }
  34.        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
  35.        new Main();
  36.    }
  37. }
  38.  
  39.  

Y Aquí otro comando de ejemplo, mvn -version, que arroja la versión de maven de mi pc

(http://i64.tinypic.com/2s1b3ib.jpg)


Título: Re: Re: Comandos CMD desde Java
Publicado por: LuisCaTre en 23 Enero 2018, 19:09 pm
Un ejemplo que puede servir, básico, se te abrira la cmd,  :P pero eso se puede ajustar para lo que deseas.
Código
  1. import javax.swing.*;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5.  
  6. public class Main {
  7.  
  8.    private final JTextArea area = new JTextArea();
  9.  
  10.    public Main() throws IOException, InterruptedException {
  11.        init();
  12.    }
  13.    private void init() throws IOException, InterruptedException {
  14.        final String cmd[] = new String[3]; // 3 posiciones para los comandos separados
  15.        cmd[0] = "cmd";
  16.        cmd[1] = "/c";
  17.        cmd[2] = "start";
  18.  
  19.        Process p = Runtime.getRuntime().exec(cmd); //tambien sirve new String[]{"cmd","/c","start"};
  20.        p.waitFor();
  21.        try(BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
  22.            final StringBuilder sb = new StringBuilder();
  23.            String data = "";
  24.            while( (data = r.readLine() ) != null) {
  25.                sb.append(data);
  26.                sb.append("\n");
  27.            }
  28.            println(sb.toString());
  29.            area.setText(sb.toString());
  30.        }
  31.        JOptionPane.showMessageDialog(null,area,"Informacion",1);
  32.    }
  33.    static void println(final String s) {System.out.println(s); }
  34.        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
  35.        new Main();
  36.    }
  37. }
  38.  
  39.  

Y Aqui otro comando de ejemplo, mvn -version, version de maven

(http://i64.tinypic.com/2s1b3ib.jpg)
Gracias men, no entendí mucho, pero ya veré la forma de hacerlo funcionar.

Enviado desde mi M1092R mediante Tapatalk


Título: Re: Comandos CMD desde Java
Publicado por: rub'n en 23 Enero 2018, 19:57 pm
Gracias men, no entendí mucho, pero ya veré la forma de hacerlo funcionar.

Enviado desde mi M1092R mediante Tapatalk

Tu como que quieres es que te hagan la tarea, en realidad programaste algo en python? parecido ?  NO TE REGAÑO
 
e igual puedes jugarte editando las lineas 15, 16, 17

La magia esta aquí, pero debes de poner de tu parte tambien
Código
  1. Runtime.getRuntime().exec(COMANDOS);
  2.  

Comandos pueden ser un String, array de String[] de varias formas con el valor correspondiente al comando a ejecutar dependiendo el Sistema Operativo aquí es con guindow$
  • Un array de tipo  String[]{"cmd","/c","start"};
  • Un String con el comando "cmd /c start"

Código
  1. final String cmd[] = new String[3]; // 3 posiciones para los comandos separados
  2.        cmd[0] = "cmd";
  3.        cmd[1] = "/c";
  4.        cmd[2] = "start";  

Este array en cada posición almacena un String correspondiente al comando a ejecutarse, hay mas maneras.



Título: Re: Comandos CMD desde Java
Publicado por: LuisCaTre en 24 Enero 2018, 05:52 am
Si lo hice, en Python hay un módulo que se llama os y una función(de ese módulo obviamente) que es así:

os.system("cd Desktop") por ejemplo. Lo hice para no tener que escribir códigos una y otra vez para quitar el virus del acceso directo de las USB, ya sabes, ese típico virus que se quita con "attrib /d /s.........".

No es mentira, por eso creo que debe haber un equivalente en Java.
No te tenido tiempo para probar el código que me diste, probablemente lo haga hasta el viernes, ya te avisaré cuando me funcione, pero por lo pronto gracias :)


Título: Re: Comandos CMD desde Java
Publicado por: rub'n en 24 Enero 2018, 06:00 am
Si lo hice, en Python hay un módulo que se llama os y una función(de ese módulo obviamente) que es así:

os.system("cd Desktop") por ejemplo. Lo hice para no tener que escribir códigos una y otra vez para quitar el virus del acceso directo de las USB, ya sabes, ese típico virus que se quita con "attrib /d /s.........".

No es mentira, por eso creo que debe haber un equivalente en Java.
No te tenido tiempo para probar el código que me diste, probablemente lo haga hasta el viernes, ya te avisaré cuando me funcione, pero por lo pronto gracias :)

Si tee da la gana de hasta ser dios con java puedes serlo, recuerda que es una gran plataforma y bla bla  ;)

ese comando claro que se puede usar desde luego que si, seria interesante probar, he visto utilidades para limpiar windows con java.

https://foro.elhacker.net/java/cambiar_atributos_de_carpetas_ocultas_por_virus_desde_una_aplicacion_jar-t327747.0.html;msg1615018

Ahorita ando encangrejao en otra cosa, pero estamos pendiente.  ;D


Título: Re: Comandos CMD desde Java
Publicado por: LuisCaTre en 24 Enero 2018, 06:15 am
No tengo el virus ahora, no estoy en mi compu. Lo siento.
Sobre el programa, fue muy básico, por eso no creo que debería haber complicaciones en Java.
No tiene mucho que empecé con Java, estoy aprendiendo aún.


Título: Re: Comandos CMD desde Java
Publicado por: LuisCaTre en 24 Enero 2018, 14:55 pm
Este es.(https://uploads.tapatalk-cdn.com/20180124/6766f55de286f7021b7d1d59846d14f8.jpg)

Enviado desde mi M1092R mediante Tapatalk