0

apache.commons.netを使用してTelnetクライアントを作成しました。これを使用して、リモートコマンドを送信し、端末出力を文字列として取得できます。ただし、リモートファイルも編集したいと思います。リモートシステムにエディターがviありedます。私はこれを行います。入力ストリームと出力ストリームを使用して他のコマンドを実行し、次のような結果を取得しています。

in = telnet.getInputStream();
out = new PrintStream(telnet.getOutputStream());

助けてください..

4

1 に答える 1

0

これを行うには、Javaプログラムがホストシステムによって認識される端末タイプを完全にエミュレートする必要があります。これは、サーバーによって送信されたすべてのエスケープシーケンスを追跡し、仮想画面の内容とカーソルの位置を追跡することを意味します。次に、適切な文字シーケンスを送信してカーソルの動きを制御し、viからのフィードバックを処理(および検証)して編集操作を実行する必要があります。

これには、ターミナルエミュレーションの仕組みを深く掘り下げることが含まれます。

Googleで「Javavt100エミュレータ」を検索して開始してください。出発点を提供するかもしれないそこにいくつかのプロジェクトがあります。

于 2012-10-05T00:15:38.057 に答える