URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9835
[ Назад ]

Исходное сообщение
"bash while вложенность"

Отправлено djeck , 03-Мрт-14 17:43 
n=0
n1=0
n2=0
while [ $n1 -lt 9 ];
do
    n1=$[$n1+1];
    while [ $n2 -lt 9 ];
    do
       n2=$[$n2+1];
       echo $n$n1$n2.png >> good.dat;

    done
done

результат:
011.png
012.png
013.png
014.png
015.png
016.png
017.png
018.png
019.png

а почему? я ожидал еще таких 8 блоков где увеличивается второй разряд...


Содержание

Сообщения в этом обсуждении
"bash while вложенность"
Отправлено Andrey Mitrofanov , 03-Мрт-14 17:59 
Двоечник.

> n=0
> n1=0
> n2=0

# n2=0

> while [ $n1 -lt 9 ];
> do
>  n1=$[$n1+1];

n2=0

>[оверквотинг удален]
> 011.png
> 012.png
> 013.png
> 014.png
> 015.png
> 016.png
> 017.png
> 018.png
> 019.png
> а почему? я ожидал еще таких 8 блоков где увеличивается второй разряд...


"bash while вложенность"
Отправлено allez , 03-Мрт-14 21:35 
К тому, что посоветовал Андрей, добавлю лишь, что лучше будет привести скрипт к такому
виду:

#!/bin/bash

n=0
n1=0
while [ $n1 -le 9 ]
do
    n2=0
    while [ $n2 -le 9 ]
    do
       echo $n$n1$n2.png
       n2=$[$n2+1]
    done
    n1=$[$n1+1]
done


В противном случае у вас будут пропущены отдельные числа из общего ряда.

"bash while вложенность"
Отправлено pavlinux , 04-Мрт-14 03:08 
>[оверквотинг удален]
>do
>    n2=0
>    while [ $n2 -le 9 ]
>    do
>       echo $n$n1$n2.png
>       n2=$[$n2+1]
>    done
>    n1=$[$n1+1]
>done
>

Мусора жжуть, читать пративна :-P


for ((i=0; i < 9; i++))
   do
     for ((j=0; j < 9; j++))
        do
           echo 0$i$j.png
     done
done

На кой хрен переменная n, нипанятна

Так же нипанятна накой хрен двойной цыкал


for ((i=0; i < 100; i++))
  do
    printf "%0.3d.png\n" $i;
done

И совсем нипанятна, накой хрен ваще цыклы


printf "%0.3d.png\n" `seq 1 100`


"bash while вложенность"
Отправлено allez , 04-Мрт-14 19:06 
>[оверквотинг удален]
>
 
> for ((i=0; i < 100; i++))
>   do
>     printf "%0.3d.png\n" $i;
> done
>

> И совсем нипанятна, накой хрен ваще цыклы
>
 
> printf "%0.3d.png\n" `seq 1 100`
>

Все вопросы - автору темы. Может, он человек, измученный нарзаном, то бишь Паскалем. :-)
А может, вовсе студент...