マウスやキーボードを自動的に操作 xdotool

LINEで送る
Pocket

xdotool はマウス、キーボードの入力をエミュレーションしてくれるツールです。ブラウザ上のWebのフォームに自動でデータを入力して、テストデータを何度も投入する負荷テストやコマンド一発で、自分好みのウィンドウ配置にしたり、はたまたシューティングゲームでの連射機能など、スクリプトを作って思い通りの自動操作を実現できます。

マウスの操作
xdotool mousemove X Y : マウスのポインタを X Y 座標に移動
xdotool mousemove_relative X Y : マウスのポインタを現在地から X Y 分移動、マイナス移動の場合は — を追加
xdotool mousemove_relative — -X -Y
xdotool click 1 : 左ボタンクリック
xdotool click 2 : 中ボタンクリック
xdotool click 3 : 右ボタンクリック
xdotool mousedown 1〜3 : マウスダウン
xdotool mouseup 1〜3 : マウスアップ

キーボードの操作
xdotool type “Hello World” : Hello World とタイプする
xdotool key a : a キー入力
xdotool keydown a : a キーダウン
xdotool keyup a : a キーアップ
xdotool key Ctrl+Shift+t : 同時キー操作の場合は、+ を使う

ウィンドウの操作
xdotool getdisplaygeometry : ディスプレイのジオメトリを取得
xdotool getwindowgeometry : ウィンドウのジオメトリを取得
xdotool getwindowfocus : ウィンドウをフォーカスして WindowID を取得
xdotool getactivewindow : アクティブウィンドウの WindowID を取得
xdotool windowsize WindowID W H : ウィンドウのサイズを Width, Height に変更
xdotool windowmove WindowID X Y : ウィンドウを X Y 座標に移動

ヘルプの表示
xdotool help

Ubuntu のコアユーザであれが Gnomeターミナルは必ず起動すると思います。
ターミナルの起動位置、サイズ、ブウィンドウの数、決まっている人も多いかと思いますが、このようなスクリプトを作ってみました。起動した直後のGnomeターミナル上でこのスクリプトを実行すれば、100×100 の座標に、タブウィンドウが3つ追加された ウィンドウサイズ 1200×800 のターミナルに早変わりします。

#!/bin/bash

WID=`xdotool getwindowfocus`
xdotool windowmove $WID 100 100
xdotool key Ctrl+Shift+t
xdotool key Ctrl+Shift+t
xdotool key Ctrl+Shift+t
xdotool windowsize $WID 1200 800
LINEで送る
Pocket

  • このエントリーをはてなブックマークに追加

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください