指定されたpid $ $でプロセス終了を受け取ります。

指定されたpid $ $でプロセス終了を受け取ります。

私の手にPIDがあるとしましょう。mypid=$$

指定されたpidでプロセスの終了を受け取るために使用できるbash /システムコマンドはありますか?

mypidにプロセスがない場合は、コマンドが失敗する必要があると思います。

ベストアンサー1

この回答で必要なものを手に入れました。https://stackoverflow.com/a/41613532/1223975

..使用された結果wait <pid> pidが現在のプロセスの子プロセスである場合にのみ有効です。

ただし、以下はすべてのプロセスに適用されます。

プロセスが完了するまで待ちます。

Linux:

tail --pid=$pid -f /dev/null

ダーウィン($pidファイルを開く必要):

lsof -p $pid +r 1 &>/dev/null

タイムアウト(秒)あり

Linux:

timeout $timeout tail --pid=$pid -f /dev/null

ダーウィン($pidファイルを開く必要):

lsof -p $pid +r 1m%s -t | grep -qm1 $(date -v+${timeout}S +%s 2>/dev/null || echo INF)

おすすめ記事