Hola denuevo una solucion que encontre es ponerle un while o un for antes de que cierre la conexión
no se si este bien ya que esto lo esta haciendo por ahora en windows pero
no se si tambien sirva para un router por ejemplo en donde antes de cambiar una configuracion
ay que poner un comando para indicar que guarde la configuracion actual antes de salir de la session de usuario
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.Session;
import ch.ethz.ssh2.StreamGobbler;
public class asd
{
public static void main
(String[] args
) {
String hostname
= "192.168.56.2"; int port =2222;
try
{
conn.connect();
boolean isAuthenticated = conn.authenticateWithPassword(username, password);
if (isAuthenticated == false)
P[0]="cmd /c dir";
P[1]="cmd /c mkdir aaaa";
P[2]="cmd /c dir";
int n=0;
while(n<3){
Session sess = conn.openSession();
sess.execCommand(P[n]);
n++;
System.
out.
println("Here is some information about the remote host:");
InputStream stdout
= new StreamGobbler
(sess.
getStdout()); while (true)
{
if (line == null)
break;
}
System.
out.
println("ExitCode: " + sess.
getExitStatus());
sess.close();
}
conn.close();
}
{
e.
printStackTrace(System.
err);}
}
}
aqui esta con el pequeño while que en este caso reproduce en serie los 3 comandos al cmd de mi maquina virtual la cosa esque no entiendo bien si se desconecta y vuelve a conectar para realizar el segundo P[1] o si sige en la misma session