この質問が重複していることがわかります。
コマンドラインを介して画面上のアプリケーションのウィンドウサイズと位置を設定するには?
コマンドラインで最大化されたウィンドウのサイズ変更
最初のリンクで問題を解決できました。しかし、私はBash言語を学ぶつもりですが、次のスクリプトにどのような問題があるのか知りたいです。
#!/bin/bash
xfce4-settings-manager & sleep 0.1
xwininfo -name "xfce4-settings-manager" | grep xwininfo: | awk {'printf$4'}
wmctrl -i -r $1 -b add,maximized_vert,maximized_horz &
スクリプトを実行したら、「xwininfo」がアプリケーションに異なるID値を使用していることを確認してください。理由がわからない。誰でもこの問題を解決するのに役立ちますか?
よろしくお願いします。
ベストアンサー1
あなたが探しているツールは悪魔の勢力(バージョン1でも2でも全く異なる設定言語を使用しています。)このサイトには、次のような多くの例があります。1 2 サム 4。
スクリプトに問題があることが確認されましたジェフ・シャラーコメントから:出力が抽出される行はxwininfo
呼び出しを挿入しませんwmctrl
。スクリプトでコマンド出力を使用するには、次のようにします。コマンドの置き換え。
windowid=$(xwininfo -name "xfce4-settings-manager" | awk '$1 == "xwininfo:" {printf $4}')
wmctrl -i -r "$windowid" -b add,maximized_vert,maximized_horz &
行が長すぎるのを防ぐために中間変数を使用しましたが、すべての操作をインラインで実行することもできます。
wmctrl -i -r "$(xwininfo -name "xfce4-settings-manager" | awk '$1 == "xwininfo:" {printf $4}')" -b add,maximized_vert,maximized_horz &
また、grepとawk呼び出しを組み合わせて単一のツールを使用する方が簡単であることがわかりました。
xwininfo
ルックアップウィンドウIDを使用する必要はありません。wmctrl
ウィンドウ名を渡すだけです。
wmctrl -r "xfce4-settings-manager" -b add,maximized_vert,maximized_horz &