Linuxコマンド「ジョブ」は、バックグラウンドで実行されているコマンドを表示するようです。「emacs &」のように入力してから「jobs」と入力すると、表示されます。しかし、他の端末で「jobs」と入力すると、何も機能していないことがわかります。また、別の端末で ">history" と入力すると、異なる結果が表示されます。なんで?
「マンジョブ」を心がけていますが、ジョブに関するマニュアルはありません。
質問する
4544 次
2 に答える
4
" jobs
"、" bg
"、" fg
"、" kill
"、" wait
" などのコマンドはすべて、ジョブ制御用の組み込みシェル コマンドであり、現在実行中のシェルにのみ関連しています。参照: http://linuxcommand.org/lts0080.php
pts/3に接続すると、その端末でシェル (たとえばbash ) を実行すると、コマンド プロンプトが表示され、プロセスを開始したり、コマンドを入力したりできます。
pts/5に接続している場合、そのターミナルで別のシェル ( bashも) を実行すると、別のコマンド プロンプトが表示され、プロセスを開始したり、コマンドを実行したりできます。
これらは異なる bash プロセスであり、それぞれに独自のコマンド履歴とジョブがあります。そのため、ある bash プロセスのバックグラウンド プロセスを別の bash プロセスから見ることはできません。これらは、実行中の 2 つの別個の bash プロセスです。
于 2013-10-01T16:06:46.017 に答える