単純な起動スクリプトが機能しない

単純な起動スクリプトが機能しない

したがって、起動時に2つのターミナルウィンドウを実行する小さなスクリプトがあります。スクリプトは次のとおりです~/.local/bin$PATH

#!/bin/bash

sleep 5 &&

mate-terminal --geometry=87x47+0+0
mate-terminal --geometry=87x47+802+0

これでAlt+F2、既存の端末または(Ubuntu Mate)を介して実行すると正常に動作します(入力が47にもかかわらず、縦サイズが46を超えない)。トップパネルとボトムパネルの間に「固定」されたらいいですが、今は十分近いです。

私の主な関心事は、再起動すると最初のウィンドウだけが起動することです。 2番目のウィンドウは、最初のウィンドウを閉じた後にのみ開始されます。最初のウィンドウを追加して背景に送信すると機能しますか&

答え1

スクリプトは基本的に次のようになります。

sleep 5 && mate-terminal --geometry=87x47+0+0
mate-terminal --geometry=87x47+802+0

これは、「5秒待ってから端末を実行し、完了すると2番目の端末を実行します」を意味します。ここで「完了」とは、端末が終了し、制御権がスクリプトに返されたことを意味します。

おそらくあなたが望むもの

sleep 5
xtoolwait mate-terminal --geometry=87x47+0+0
xtoolwait mate-terminal --geometry=87x47+802+0

xtoolwait起動するXクライアント(ターミナル)にウィンドウがマッピングされると、コントロールはスクリプトの残りの部分に返されます。

xtoolwaitXサーバーソフトウェアと一緒にインストールする必要がありますが、インストールされていない場合は、通常のディストリビューションでパッケージとして使用できます。

失敗した場合(DebianおよびUbuntuパッケージで削除されたようです)、次のものを使用できます。

sleep 5
mate-terminal --geometry=87x47+0+0 &
mate-terminal --geometry=87x47+802+0 &

自分のアドバイスに従って端末をバックグラウンドプロセスとして起動します。


私が最後にデスクトップの場所に興味を持っていたのは約15年前でした。xtoolwait私の記憶が正しい場合は、標準のX11ディストリビューションの一部でした。それ以来、私は仮想デスクトップごとに1つのアプリケーションを実行し始め、ブラウザがあるtmux端末以外にはほとんど使用されていません。

私はそれがもはや標準のX11パッケージの一部ではないという事実に少し驚きましたがxtoolwait、世界はそれがなくても続くと思いました。

&コマンドの最後にのみ使用してください。

関連情報