質問

バックグラウンドタスクを開始する簡単なKShellスクリプトを作成しました

#/bin/ksh 
#startMonitoring

./detectFile /usr/local/data/testFile > fileHistory &

次のコマンドで実行します

startMonitoring

ジョブを実行しても結果は得られませんが、コマンドは実行中でpsに表示されます:

  

512232 pts / 0 0:34 / bin / ksh ./detectFile / usr / local / data / testFile

ジョブ内のアイテムが表示されないのはなぜですか。ジョブ内に表示されるようにスクリプトを変更するにはどうすればよいですか

役に立ちましたか?

解決

jobs コマンドは、現在のシェルのみを検索します。スクリプトは独自のシェルで実行されます。代わりにスクリプトを入手した場合、 jobs はそれを表示します:

$ . startMonitoring
$ jobs
[1] +  Running                 . startMonitoring
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top