私はよくこれを行います:
$ gitk &
プログラムを開始し (gitk
この場合と同様ですが、どちらでもかまいません)、シェル プロンプトに戻って同じシェルで作業を続けること。すでに書いた後、どうしますか
$ gitk
なしで&
?^z
のような、プロセスを中断せずにバックグラウンドに置くキーの組み合わせはありますか?
私はよくこれを行います:
$ gitk &
プログラムを開始し (gitk
この場合と同様ですが、どちらでもかまいません)、シェル プロンプトに戻って同じシェルで作業を続けること。すでに書いた後、どうしますか
$ gitk
なしで&
?^z
のような、プロセスを中断せずにバックグラウンドに置くキーの組み合わせはありますか?
なしでプロセスを開始した場合は&
、フォアグラウンドで実行されます。これを押しCtrl+Z
てプロセスを停止し、コマンドbg
を入力してプロセスの実行をバックグラウンドで再開します。
ls
、またはなどの外部プログラムを呼び出すたびにgitk
、fork
. Bashでプログラムを実行すると&
、フォーク以上のことができます。バックグラウンドで実行される新しいプロセス グループを作成します。
Ctrl+z は通常、(シグナルを使用して) ジョブをバックグラウンドで停止状態にする効果があり、 で再起動しbg
ます。を使用して変更できるため、「通常」と言いますstty
。端末の設定を一覧表示するには (およびその他の魔法の Ctrl キーを表示するには)、 を試してくださいstty -a
。
バックグラウンド ジョブの特徴は、通常はキーボードにアクセスできないが、画面にはアクセスできることです。それは他の出力と混在する可能性があるため、stty tostop
それを防ぐために使用できます。画面を使用するには、ジョブをフォアグラウンドにするか、 を使用する必要がありますstty -tostop
。ジョブは、 を使用してフォアグラウンドに移動されfg
ます。
多くのバックグラウンド ジョブを設定できることに注意してくださいjobs
。fg
、bg
、などの一部のコマンドはkill
、オプションのジョブ番号 (プレフィックス%
) を取ります。