0
を失敗した場合、私は、私は経由で実行する2つのプロセスを持っているすべての並列プロセスを殺しますそれに対していくつかのコマンドを実行します(ユーザーの追加など)。バッシュは、1つの
init_thing
関数は、start_thing
がタイムアウトしたとみなすと、ゼロ以外の終了コードで失敗する可能性があります。 start_thing
関数は失敗する可能性がありますが、成功すると永遠に実行されます。
init_thing
が失敗した場合は、start_thing
を殺してください。
多くの答えでGNU parallel
が使用されていますが、両方のプロセスが完了している(つまり、終了コードがゼロで終了しています)場合があります。
bashでこれを行う方法はありますか?おそらくparallel
を使って私が見たことがない/理解したことがありますか?
'start_thing&PID = $ !;を書くことが明確である反射後
を殺すためのpid変数が含まれている場合は、有用である可能性がありますもし! init_thing; "$ pid"を殺す。 fi' – Leon