でbash、私が実行すると:
cmd1 | cmd2 | ... | cmdi | ... | cmdn &
どこcmd{1..n}明瞭ではないかもしれないが、どのように私はのPIDを得るのですかcmdi?または、cmdiプロセスにどのように通知できますか?(例えば、それを送信SIGUSR1?)
pkill/ pgrep、pidofなどの良い答えのように見ていない、の他のインスタンスので、cmdi多分、実行している同じパイプラインの一部として含みます。jobs -pのPID cmd1を私に与えます。
iの何でもかまいません{1..n}。
cat /var/run/out | nc -l 8080だけ似ていcmd1 | cmd2ますか?ベアボーンパイプラインを入力してPIDを回復するという制約は、(1)質問に記載されておらず、(2)優れた一般的なソリューションを可能にする可能性が低いです。
cmd1 | cmd2両方のPIDを簡単に取得できる非常に特殊なケースです。nについて何か言いましたか?では、なぜn = 2と想定するのでしょうか。私はcmdiとは何かについて何か言いましたか?では、なぜcmdiを変更できると思いますか?私は一般的な解決策を求めており、あなたは制限を課しています。