Javaプログラムを介してリモートホストでコマンド/実行可能ファイルを実行しようとしています。これが私が関連するスレッドから得たコードです。リモートホストに接続して、のBufferedReaderを介してストリームを読み取ることができます。ただし、 out.println( "ls / home / ubuntu");を使用してコマンドを送信/実行することはできません。。何かお勧めはありますか?私はMACOSシステムに取り組んでいます。
Process p = Runtime.exec("ssh myhost");
PrintStream out = new PrintStream(p.getOutputStream());
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream());
Thread.sleep(3000);
while (in.ready()) {
String s = in.readLine();
System.out.println(s);
}
out.println("ls /home/ubuntu");
Thread.sleep(3000);
while (in.ready()) {
String s = in.readLine();
System.out.println(s);
}
out.println("exit");