実行のために休止状態になったプロセスは、実行中のジョブをリストし、ジョブIDを割り当てることによってフォアグラウンドに戻すことができます^Z
。しかし、雇用情報を個別にリストしようとすると$ jobs
fg %id
画面同じ端末に結果がありません。この目標を達成する方法は?
私が望むのは、同じ端末の別の画面で同じプロセスを終了せずに開始することです。
ベストアンサー1
あなたはできません。シェル操作(フォアグラウンドおよびバックグラウンドプロセス)の処理は、各個別のシェルインスタンスで実行されます。ある対話型シェルから別の対話型シェルにジョブを移行することはできません。以内にそれはまるでscreen
。
端末は実際にこれとは何の関係もありません。シェルのみを実行します。
tmux
できることは、端末マルチプレクサ(または)を使用してシェルセッション全体を移行することですscreen
。ある端末からセッションを切断しscreen
たり、セッションを確立しtmux
た後に同じコンピュータの別の端末に再接続したりすると、端末の一方のシェルセッションを別の端末に移動できます。
tmux
これは最初に開始し、次にtmux
セッション内でプログラムを開始することによって行われますtmux
。プログラムの実行中にprefixd(デフォルトprefixは)を押してセッションをCtrl+B切り離すことができます。tmux
次に、他の端末でコマンドを実行してセッションをtmux attach
再開します。tmux
分離はコマンドを介して行うこともできますtmux detach
。
screen
tmux
システムのマニュアルを参照してください。