指定されたコマンドが終了した後、gnome-terminalが終了しないようにするにはどうすればよいですか?
ユーザーがアクセスできるターミナルを作成するために、cronjobからgnome-terminalを呼び出しています。ターミナルには、最初に実行する特定のプログラムが与えられます。例えば.
gnome-terminal --tab -e "/usr/bin/myprog"
これは、「myprog」が終了するとgnome-terminalも終了することを除いて、正常に機能します。どうすれば実行を継続できますが、ターミナルプロンプトに戻るだけですか?
これを試して:
gnome-terminal --tab -e "/bin/bash -c '/usr/bin/myprog; exec /bin/bash -i'"
プロファイルを作成し(つまり、ホールド)、「コマンドが終了したとき:ターミナルを開いたままにする」を設定してから
$ gnome-terminal --tab --profile hold -e /usr/bin/myprog
Gnome-terminalの代わりにxtermまたはrxvt-unicodeを使用できます。どちらも-hold
この目的のためのオプション。
次のようなシェルスクリプトを作成します。
#!/bin/bash
# myprog-wrapper.sh - runs /usr/bin/myprog and then starts a new bash session
/usr/bin/myprog
/bin/bash
シェルスクリプトに実行権限を与えます。
次に、myprog
を直接呼び出すのではなく、このスクリプトを呼び出すようにcronジョブを設定します。
gnome-terminal --tab -e "/path/to/myprog-wrapper.sh"
/bin/bash
を選択したシェルに置き換えます。