私の質問は、私のバックグラウンド プロセスがスクリプトから開始されたことを除いて、これと非常によく似ています。私は何か間違ったことをしている可能性がありますが、この簡単な例を試してみると:
#!/bin/bash
set -mb # enable job control and notification
sleep 5 &
スリープ バックグラウンド コマンドが終了しても、通知が届きません。ただし、ターミナルで直接同じことを実行すると、
$ set -mb
$ sleep 5 &
$
[1]+ Done sleep 5
期待どおりの出力が表示されます。
私はcygwinでbashを使用しています。出力がどこに向けられているかに関係があるのではないかと推測していますが、さまざまな出力リダイレクトを試みても、これ以上近づきません。
編集:だから私は理由(thxからjkramerへ)についてより多くの情報を持っていますが、まだ方法を探しています。スクリプトから開始されたバックグラウンド プロセスが終了したという "プッシュ" 通知を受け取るにはどうすればよいですか? PID をファイルに保存してポーリングすることは、私が探しているものではありません。