数回の繰り返し後に基本的なスクリプトエラーを作成する方法

数回の繰り返し後に基本的なスクリプトエラーを作成する方法

以下の擬似コードの論理を構築しようとしています。

if 'main' job fails
 sleep 60
  re-trigger main job for 3 times.
after re-triggering for 3 times if it still fails , 
then kill the main job .




ksh 123.ksh ##main command
if [[ $?!=0 ]]
then
sleep 30
    ksh 123.ksh
if [[ $?!=0 ]]
then
sleep 30
    ksh 123.ksh

fi
fi

ここにさらに1ドルを追加できますか?確認して30回寝ると3~4回続けることができます。しかし、私はもっと一般的な方法を探しています。

3回再トリガーし、失敗したロジックを特定することはできません。

答え1

1つのオプション:

#! /bin/sh -
remaining_attempts=3; until main-job; do
  if [ "$(( remaining_attempts -= 1 ))" -eq 0 ]; then
    echo>&2 "Giving up"
    exit 1
  fi
  sleep 60
done

関連情報