web-dev-qa-db-ja.com

ターミナルから指定されたウィンドウを閉じ、最小化し、最大化する方法は?

Ubuntu GNOME 15.10をGNOME 3.18で実行していますが、指定したウィンドウを閉じる、最小化、最小化、最大化、最大化解除する方法がターミナルからあるのではないかと考えていますか?

注-私は this Q&A を見てきました-ターミナルからそれを行う方法を尋ねています...ボタンを追加する方法ではありません...ボタンは既にそこにあります、私はする必要はありませんそれらを追加します。

15
user364819

cli;からウィンドウを操作するための2つの重要なツールがあります。 xdotoolおよびwmctrl。両方のツールは機能的には重複していますが、質問を参照する最も重要なコマンドは次のとおりです。

(間違いなく不完全な)概要で、私が最もよく使うコマンドをリストします:

ウィンドウを閉じる

wmctrl:

wmctrl -ic <window_id>

ウィンドウを最小化する

xdotool:

xdotool windowminimize <window_id>

ウィンドウの最小化を解除

wmctrl:

効果的に非最小化は以下によって行われます:

wmctrl -ia <window_id>

コマンドは対応するデスクトップに移動し、最小化してウィンドウを上げるため、事実上に言及しますが、コマンドalsoはそうではないウィンドウでそれを行います最小化。

ウィンドウを最大化する

xdotool:

xdotool windowsize <window_id> 100% 100%

wmctrl:

wmctrl -ir <window_id> -b add,maximized_vert,maximized_horz

ウィンドウの最大化解除:

wmctrl -ir <window_id> -b remove,maximized_vert,maximized_horz

ノート

  • xdotoolwmctrlの両方は、デフォルトではシステムにありません。

    Sudo apt-get install xdotool wmctrl
    
  • 現在activeウィンドウでコマンドを実行するには:

    • wmctrlコマンドの場合、-iオプションを削除し、<window_id>:ACTIVE:に置き換えます

    • xdotoolコマンドの場合:<window_id>$(xdotool getactivewindow)に置き換えます

  • 多くの場合、コマンドはwindow idまたはwindow nameを使用して実行できます。 wmctrl-iオプションは、wmctrlにウィンドウIDを使用するように指示します。名前の衝突を防ぐために、ウィンドウの名前を識別子として使用することをお勧めしますnot。予想よりも簡単に起こります。

  • 私自身の経験から、スクリプトで最大化を使用しています。 wmctrlを使用して最大化/非最大化することは、UnityGnomeの両方で少しバグがありますが、私の経験ではxdotoolオプションはより堅牢です。ほとんどのスクリプトでは、wmctrlxdotoolの両方を使用することになります。

man wmctrl および man xdotool の詳細(主にセクション:WINDOW COMMANDS)。

16
Jacob Vlijm

Jacob Vlijmの答えに追加:

xdotool windowactivate $minwinid
xdotool windowraise $minwinid
xdotool windowfocus $minwinid

ウィンドウを最小化するためにも機能します。アニメーションは私にとって高速です。

4
asdfdsa