0

システム コマンドをリモートで実行できる小さなクライアント/サーバー アプリケーションを作成しました。出力を読み取るだけでよい場合は、非対話型プログラムで問題なく動作します。ただし、必要な場合に開始されたプロセスにユーザー入力を送信する信頼できる方法はありますか? プロセスが何らかの入力を要求するかどうかを調べるにはどうすればよいですか?

4

1 に答える 1

1

「expectj」を見てください。これはhttp://en.wikipedia.org/wiki/Expectのポートです

http://expectj.sourceforge.net/

例:

// Create a new ExpectJ object with a timeout of 5s
ExpectJ expectinator = new ExpectJ(5);

// Fork the process
Spawn shell = expectinator.spawn("/bin/sh");

// Talk to it
shell.send("echo Chunder\n");
shell.expect("Chunder");
shell.send("exit\n");
shell.expectClose();
于 2011-12-15T08:36:27.293 に答える