Followers

Saturday, 30 September 2017

Como executar(interagir) comandos prompt pelo Java?(Linux e Windows)

Source: pt.stackoverflow.com --- Friday, September 29, 2017
Eai galera. Preciso desenvolver um programa java que execute comandos como se fosse no promt/cmd, e de certa forma ate mesmo interagir com o mesmo. Sabe quando nós executamos algum tipo de comando no prompt e ele da uma resposta ou pede uma senha? Exatamente isso, preciso de uma função java que eu possa me conectar com um dispositivo via SSH, digitar a senha de acesso. E na sequencia rodar todos os comandos que eu precisar para configuração desse dispositivo. Pesquisando já encontrei algumas coisas, e já até consegui rodar um comando. **Mas existe um caso, no meu cenário real, onde eu preciso rodar um comando, e logo em seguida o prompt fica esperando a senha, mas não consegui fazer com que o JAVA logo envia-se a senha e eu segui-se com os próximos comandos. Segue abaixo oque eu já tenho. public static void main(String[] args) { String[] cmds = { "ssh -S none admin@ip_aqui" /*"admin", "enable", "senhaaqui", "configure terminal", "gpon", "gpon-olt 1", "show onu info" */ }; try { //ProcessBuilder a = new Proce ProcessBuilder builder = new ProcessBuilder("cmd", "/c", String.join("& ", cmds)); builder.redirectErrorStream(true); Process p = builder.start(); if ( p.waitFor() == 0){ System.out.println("Executado."); } else{ System.out.println("ERRO"); } BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream())); String line; while (true) { line = r.readLine(); if (line == null) { break; } System.out.println(line); ...



from Windows http://ift.tt/2x3plNU

No comments:

Post a Comment