xdotoolを使用すると、検索サブコマンドを使用してウィンドウを検索できます。 「gvim」クラスを持つウィンドウと「TODO」という単語を含むタイトルを見つける必要があります。どうすればいいですか?
私が試したこと:
- これは可能ですが、
xdotool search --name --class
許可されるものは次のとおりです。一つ名前とタイトルのパターン。 - xdotoolはコマンド接続をサポートしていますが、両方の検索呼び出しを接続する方法を見つけることができません。 2番目の検索呼び出しは最初の検索呼び出しをオーバーライドします。
ベストアンサー1
私のxdotoolヘルプは2つのスイッチが同じであることを示しています(xdotoolバージョン3.20150503.1)。
--name check regexp_pattern agains the window name
--title DEPRECATED. Same as --name.
だから何も起こりませんでした。私のxdotoolはあなたと同じようにウィンドウスタックを置き換えるので、シェルスクリプトを使って行いました。必要な操作を実行するシェルスクリプトを以下に提供します。
pids=$(xdotool search --class "gvim")
for pid in $pids; do
name=$(xdotool getwindowname $pid)
if [[ $name == *"TODO"* ]]; then
#Do what you want, $pid is your sought for PID,
#matching both class gvim and TODO in title
fi
done
ifステートメントのアスタリスクは、TODO
タイトルのどこにでも表示できるようにサブストリングマッチングを実行することです。