web-dev-qa-db-ja.com

wmctrlを使用してウィンドウが存在するかどうかを検出するにはどうすればよいですか?

UIの自動化を行っていますが、表示されているウィンドウに基づいていくつかのタスクを実行したいと考えています。ウィンドウは同じケースでのみ開きます。使用したいコマンドは次のとおりです。

wmctrl -a "Confirm New Extension"; xdotool key Left space

しかし、「新しい拡張子の確認」という新しいウィンドウがある場合にのみ、xdotoolコマンドを実行したいと思います。私はwmctrlが何かをするために何かを返すかどうかわかりません

if [ wmctrl -a "Confirm New Extension" ]; then
    xdotool key Left space
fi

誰かこれを手伝ってくれませんか?

1

少し実験したところ、次のスクリプトを使用して管理できました。

if test $(wmctrl -l | grep "Confirm New Extension" 2>&1 | wc -l) -eq 1; then 
    wmctrl -vxa "Confirm New Extension"
    xdotool key Left space 
fi

それが誰かを助けることを願っています。

1