[Shell]shellスクリプトのループ・リカバリの問題

3601 ワード

shellスクリプトでは、次のスクリプトを実行します.
for a in {1...100}

do

    for b in {1...100}

    do

        for c in {1...100}

        do

             sleep 10

        done

    done

done

上のsleep 10秒が私のプログラムを代表して10秒も実行する必要があると仮定します.今では50,50,50まで実行されていますが、ctrl+c(悪い習慣で、バックグラウンドに置くべきです)を押してしまいました.
では、どうやって回復しますか?もう一方走るの?あまりにも怖いです.
次の実行は明らかに50,50,51であるべきで、後で50,1,2などで、私は簡単な判断を書いて、それをcontinueさせて、後でそんなに簡単ではないことを発見しました.
以下の方法で行うべきです.
 1 if (a < 50)

 2 {

 3     continue;

 4 }

 5 else if(a == 50)

 6 {

 7    if(b < 50)

 8    {

 9           continue;

10    }

11    else if ( b == 50)

12    {

13          if(c <= 50)

14          {

15                continue;

16          }  

17 

18    }   

19 

20 }

以上はC言語で書かれていますが、実際にはshellで書くべきですが、本当に疲れて愛していません.