Ubuntu 無人インストール: ダイアログボックスにキーストロークをエコーし​​ます。

Ubuntu 無人インストール: ダイアログボックスにキーストロークをエコーし​​ます。

Ubuntu 12.04 LTSサーバー64

私の無人モードbootstrap.shスクリプトには次のものがあります。

apt-get upgrade -y

実行中にGRUBインストールの生のUIが表示され、キーシーケンスを入力する必要があることがわかります。

up arrow 
space bar 
enter/return

このシーケンスを次のようにパイプすることは可能ですか?

echo key1 key2 key3 | apt-get upgrade -y

答え1

このツールを使用すると、xdotoolコマンドラインを介してアプリケーションにキーを送信できます。

$ xdotool key Up space Return

例 #1

echoシェル履歴に表示されるように、次のコマンドを実行します。

$ echo hi
hi

これでxdotool、2つの上向き矢印を使用して履歴に戻り、前のコマンドを「再実行」することができます。

$ xdotool key Up Up space Return 
^[[A^[[A 
$ echo hi 
hi
$ 

例 #2

パイプを介してキー押下を送信するには、それを使用してxdotool type ...アプリケーションのキー押下をシミュレートできます。たとえば、

$ xdotool type ":e ~/.bashrc" | vim

引用する

関連情報