14

私の怠惰を考慮して、さまざまなデスクトップでいくつかの毎日のアプリを一度に開く bash スクリプトを作成しようとしました。このスクリプトは Gnome で動作するはずです。私はこれまでにそれを書いてきました:

#!/bin/bash
firefox &
thunderbird &
/usr/bin/netbeans --locale en &
amsn &
gnome-terminal &
sleep 2
wmctrl -r firefox -t 0 && wmctrl -r netbeans -t 1 && wmctrl -r gnome-terminal -t 2 && wmctrl -r amsn -t 6 && wmctrl -r thunderbird -t 7

...しかし、うまくいきません。アプリは開きますが、指定したデスクトップに割り当てられません:(。

sleep の値を 15 に変更しましたが、正しく割り当てられているのは firefox と netbeans だけです。残りは、スクリプトを実行するワークスペースで開きます。

4

4 に答える 4

7

Akira のコメントのおかげで、私はついにそれを機能させることに成功しました (スクリプトは起動時に魔法のように実行されます) 新しいコードは次のとおりです。

#!/bin/bash
wmctrl -n 8

firefox &
thunderbird &
/usr/bin/netbeans --locale en &
amsn &
gnome-terminal &
sleep 15

wmctrl -r firefox -t 0
wmctrl -r netbeans -t 1 
wmctrl -r terminal -t 2 
wmctrl -r amsn -t 6 
wmctrl -r thunderbird -t 7

#focus on terminal
wmctrl -a terminal 
于 2015-08-31T16:02:31.463 に答える
2

DevilsPieをチェックアウトすると、ウィンドウの作成を監視し、それに応じて動作します。

Devil's Pieは、作成時にウィンドウを検出し、ウィンドウを一連のルールに一致させるように構成できます。ウィンドウがルールに一致する場合、そのウィンドウで一連のアクションを実行できます。たとえば、X-Chatによって作成されたすべてのウィンドウをすべてのワークスペースに表示させることができますが、メインのGkrellm1ウィンドウはページャーまたはタスクリストに表示されません。

または、同じことを社内で実行できるウィンドウマネージャーを使用することもできます。フラックスボックス

于 2010-07-28T08:48:36.373 に答える
2

dconf エディタで:

org->gnome->shell->extensions->auto-move-windows
here is what it should look like:
['firefox.desktop:1','pidgin.desktop:2']
于 2013-07-09T13:22:54.510 に答える