runner1.sh..runner31.sh という名前の 31 個のシェル スクリプトがあります。cron ジョブを作成し、これらの .sh スクリプトをすべて、まだ実行されていない場合は実行する必要があるという条件で順次実行する必要があります。一方、runnerX が失敗した場合は停止し、runnerX+1 の実行を開始しないでください。
これらのタスクを集約するためのシェル スクリプトを次のように作成しましたが、これが正しい解決策であるかどうかはわかりません。
ps -ef |grep -i grep | grep runner1.sh && echo "not to start" && sh runner1.sh && sh runner2.sh && sh runner3.sh && sh runner4.sh && sh runner5.sh && sh runner6.sh && sh runner7.sh && sh runner8.sh && sh runner9.sh && sh runner10.sh && sh runner11.sh && sh runner12.sh && sh runner13.sh && sh runner14.sh && sh runner15.sh && sh runner16.sh && sh runner17.sh && sh runner18.sh && sh runner19.sh && sh runner20.sh && sh runner21.sh && sh runner22.sh && sh runner23.sh && sh runner24.sh && sh runner25.sh && sh runner26.sh && sh runner27.sh && sh runner28.sh && sh runner29.sh && sh runner30.sh && sh runner31.sh
この方法が正しいのか、解決策が別のものなのか教えてください。