telnetセッションでxdotoolを使用する

telnetセッションでxdotoolを使用する

Telnet セッションでキーの押下をシミュレートする必要があり、すべてをシェル スクリプトによって呼び出す必要があります。

#!/bin/sh    
telnet 192.168.1.14 50000 
xdotool type "404"

ただし、telnet セッションが開始されると、xdotool が実際に実行される前に終了する必要があります。telnet の実行中にキー シミュレーションを実行する方法はありますか?

答え1

私の場合は次のスクリプトで解決しました。

#!/bin/sh    
gnome-terminal --title="Telnet" -x telnet 192.168.1.14 50000 
WID=`xdotool search --class "Telnet" | head -1`
xdotool windowactivate $WID
xdotool type "404"
xdotool key "KP_Enter"

「Telnet」というタイトルの新しいウィンドウに Telnet セッションを作成します。 は、xdotool searchそのウィンドウを見つけてフォーカスし、その後、xdotool typeボタンの押下をシミュレートするために使用されます。

答え2

や などのプロセス制御コマンドを使用するnohupと、disown長時間実行されるプロセスを簡単に開始し、ログアウトまたはセッションを終了した後でもプロセスを実行し続けることができます。

シェル セッションを実行すると、コマンド ラインで実行するすべてのプロセスはそのシェルの子プロセスになります。ログアウトしたり、セッションがクラッシュしたり、予期せず終了したりすると、SIGHUP (ハングアップ信号) の kill 信号が子プロセスに送信され、子プロセスも終了します。

この質問Telnet 後にスクリプト/コマンドを実行する方法について回答します。

関連情報