0

コマンド「jobs」を含む単純なスクリプトを作成しようとしていますが、機能していないようで、「man」によっても認識されません...何が起こっているのかわかりません:S。

4

6 に答える 6

1

コマンドを機能させるには、対話型シェルを実行する必要がありますjobs。この方法でのジョブ制御は、スクリプトではなくユーザーによって使用されます。

このコマンドを使用してjobs -p、実行中のバックグラウンドタスク(ジョブ)のpidを取得できるはずです。これにより、実行しようとしていることを実行できる場合があります。これにより、サブプロセスのすべてのpidが表示され、個別にチェック/監視できます。

于 2012-12-05T18:09:32.957 に答える
1

jobsはbashに組み込まれています(考えてみれば、シェルから起動されるジョブプロセスを制御するシステムコマンドを使用することは実際には意味がありません)。このコマンドの詳細については、次のURLを参照してください。

于 2012-12-05T18:14:55.990 に答える
1

jobs実行中のシェルのインスタンスによって生成されたバックグラウンドプロセスや中断されたプロセスについてのみレポートしますjobs。したがって、スクリプトでそれを使用することは、有用性が制限されます(ただし、スクリプトユーザーに何が起こっているかを報告するだけで問題ありません)。スクリプトの初期に生成され、バックグラウンドまたは他の方法で一時停止されたものだけがわかるためです。スクリプトを実行しているシェルインスタンスに。

于 2012-12-05T18:18:23.087 に答える
0

POSIXのマニュアルページをインストールします。パッケージには、「manpages-posix-dev」などの名前を付ける必要があります。

于 2012-12-05T17:56:00.237 に答える
0

と呼ばれるlinux/unixコマンドはないと思いますjobs

which jobssudo apt-get jobsubuntuの両方で何も見つかりません。

ローカルバイナリの場合は、$PATHが含まれていることを確認してください。

于 2012-12-05T17:56:58.090 に答える
0

psコマンドを使用して、シェルスクリプトからプロセスを検索します

于 2012-12-05T18:29:55.293 に答える