web-dev-qa-db-ja.com

プログラムを閉じた後、どのようにしてgnome-terminalを開いたままにできますか?

SSHインスタンスを開く次のショートカットがあります。 SSHが閉じても端末が開いたままになるように変更するにはどうすればよいですか?

[Desktop Entry]
Terminal=true
Type=Application
Name[en_US]=ssh
Icon=/logo_Sprite.png
Exec=gnome-terminal --geometry=... --window-with-profile=... --title=... -e 'bash -c "ssh -t -i ~/dsa.key [email protected] Sudo -s"'
5

1.最初のオプション:gnome-terminal設定の編集

gnome-terminalで、設定の[タイトルとコマンド]タブに移動します。次に、[コマンドが終了したら]ドロップダウンリストをクリックし、[ターミナルを開いたままにする]を選択します。

enter image description here


2.すべての端末に影響を与えたくない場合

最後のコマンドとしてbashを追加できます。私のテストでは、

Exec=gnome-terminal -e 'bash -c "gedit; echo Monkey; bash"'

仕事をしました。コマンドでは、おそらく次のようにする必要があります。

Exec=gnome-terminal --geometry=... --window-with-profile=... --title=... -e 'bash -c "ssh -t -i ~/dsa.key [email protected] Sudo -s; bash"'


3. Enterキーを押すまでターミナルを開いたままにします

別のオプションは、read lineをコマンドの最後に配置することです。その場合、端末はヒットするまで開いたままになります Enter

私のテストから:

Exec=gnome-terminal -e 'bash -c "gedit; echo Monkey; read line"'

またはおそらくあなたのコマンドで:

Exec=gnome-terminal --geometry=... --window-with-profile=... --title=... -e 'bash -c "ssh -t -i ~/dsa.key [email protected] Sudo -s; read line"'

ノート

  • このランチャーは、「メイン」コマンドでgnome-terminalを呼び出すため、Unityランチャーでgnome-terminal独自のアプリケーションランチャーから他の可能なウィンドウを「スチール」することに注意してください。クリーナーは、既存のgnome-terminalランチャー(または他の任意のランチャー)へのショートカットとしてコマンドを追加することです。
  • ランチャーのコマンドはすでにgnome-terminalを呼び出しているため、Terminal=trueを設定する必要はありません。
7
Jacob Vlijm

これを行うには、コマンドの最後に「$ Shell」変数を追加するだけです。 Exec = ....行の以下の例を参照してください。

[Desktop Entry]
Type=Application
Terminal=true
Name=MDS Control
Icon=utilities-terminal
Exec=gnome-terminal -e "bash -c 'Your command;$Shell'"
Categories=Application;
Name[en_US]=MDS-Control
1

私は数分間このコードをいじりました。私は解決策を見つけたと思います。これが私のコードです(詳細については少し単純化しすぎています):

[Desktop Entry]
Terminal=true
Type=Application
Name[en_US]=ssh
Exec=gnome-terminal -e 'bash -c "ssh"' && gnome-terminal --geometry=... --window-with-profile=... --title=... -e 'bash'

お役に立てれば!

&&コマンドを使用して、生のbashでgnome-terminalを実行するコードを追加しました。

編集:私はちょうど誰かがすでにそれを解決したことに気づいた!おっと!

1
Julien deC