Диапазоны в if(bash), anonymous, 31-Авг-11, 00:37 [смотреть все]Доброго времени суток! Никак не могу найти, как же указывать диапазоны в sh/bash(желательно - в sh, без башизмов). В частности, четные/нечетные диапазоны, либо проверка числа на четность/нечетность вообще. Пробовал типа if [ $i -eq {0..30..2} ]; then .... fi Толку чуть. Есть адекватное решение?
|
- Диапазоны в if(bash), Аноним, 07:05 , 31-Авг-11 (1)
Доброго времени! Мы знаем, что чётное число делится нацело на два. В posix shell арифметические операции производятся следующим образом: $((num_1 operator num_2)) Пример: echo $((2/1)) В bourne shell арифметические операции производятся следующим образом: expr num_1 operator num_2 Пример: expr 2 / 1 info coreutils 'expr invocation' man expr #!/bin/sh for num in -1 0 1 2 3 4 5; do if [ $num -eq $((num/2*2)) ]; then echo "$num - чётное число"; else echo "$num - нечётное число"; fi done
- Диапазоны в if(bash), омоним, 08:33 , 21-Сен-11 (3)
> Доброго времени суток! Никак не могу найти, как же указывать диапазоны в > sh/bash(желательно - в sh, без башизмов). В частности, четные/нечетные диапазоны, либо > проверка числа на четность/нечетность вообще. Пробовал типа > if [ $i -eq {0..30..2} ]; then > .... > fi > Толку чуть. Есть адекватное решение?man seq
|