選択したウィンドウを除くすべてのnemoファイルブラウザインスタンスを閉じたいです。
これにはスクリプトに従う必要があります。
#!/bin/bash
not_to_close=$(xdotool selectwindow)
class_name=$(xprop WM_CLASS | cut -d '"' -f2)
for i in $(xdotool search --desktop 0 --class "$class_name"); do
if [ "$not_to_close" != "$i" ]; then
xdotool windowclose "$i"
fi
done
しかし、いくつかの問題があります。 2回(xdotool
それぞれ1つずつ)クリックする必要がありますが、xprop
そうしたくありません。
クリック数を1回に減らすにはどうすればよいですか?
ベストアンサー1
クラスをその名前に直接置き換えて、そのxprop
行を削除するだけです。
--class nemo
編集:これを試してください。両方ともテストしました。時計windowkill
ウィンドウでは代わりに使用することもできますwindowclose
。
xclock &
xclock &
スクリプトを実行します。
#!/bin/bash
not_to_close="$(xdotool selectwindow )"
other_wins="$(xdotool search --class "xclock" | grep -v "$not_to_close")"
while IFS= read -r line
do
echo "$line"
if [ "$not_to_close" -ne "$line" ]; then
xdotool windowkill "$line"
fi
done <<< "$other_wins"
その後、2 つの xclock ウィンドウのいずれかを選択すると閉じ、他のウィンドウはアクティブのままです。