2016-02-10 4 views
0

Я борюсь с этим скриптом, я пробовал разные вещи, но я не могу заставить его работать.reset counter in while loop bash

Я пробовал с if, не работает, я пробовал с вложенными, а также без успеха. Я не знаю, что делать больше ...

Если значение IMAX достигло 10 я хочу, чтобы начать с 1

это код:

folder="f" 
ps=20000 
name="test" 
i=1 
imax=1 

while [ $i -le 20 ] 
    do 
     cd 
     cd "$folder$((i))" 
     sed -i 1s/.*/$name$((imax))/ file.txt 
     sed -i 2s/.*/$ps/ file.txt 
     ((i++)) 
     ((imax++)) 
    done 

Спасибо

ответ

2

Что-то вроде это работает:

i=1 
imax=1 
while [ $i -le 20 ] 
    do 
     echo $i $imax 
     ((i++)) 
     ((imax++)) 
     if [ $imax -eq 10 ]; then imax=1; fi 
    done