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

Исходное сообщение
"как осуществить перебор"

Отправлено fura13 , 26-Окт-04 19:08 
Здраствуйте.
Как реализовать на shell скриптах такое :

perem=0;
to_chto_nushno=k;
while perem == to_chto_nushno do
{
     perem=`спец участок`;
     echo $perem;
}

так вот `спец участок` должен быть наверно ф-цией :
perem = func ( perem )
которая возвращает : если perem=0  -> то возвращает 1
                                   если perem=4 -> то возвращает 5
                                   если perem=9 -> то a
                                   если perem=c -> то d
                                   если perem=z -> то 00
                                   если perem=00 -> 01
и так далее ...
Подскажите как это делается. Или дайте ссылку на похожие скрипты.
Спасибо большое.


Содержание

Сообщения в этом обсуждении
"как осуществить перебор"
Отправлено max , 27-Окт-04 23:11 
more /etc/init.d/*

"как осуществить перебор"
Отправлено Brainbug , 28-Окт-04 09:44 
>Здраствуйте.
>Как реализовать на shell скриптах такое :
>
>perem=0;
>to_chto_nushno=k;
>while perem == to_chto_nushno do
>{
>     perem=`спец участок`;
>     echo $perem;
>}
>
>так вот `спец участок` должен быть наверно ф-цией :
>perem = func ( perem )
>которая возвращает : если perem=0  -> то возвращает 1
>                                   если perem=4 -> то возвращает 5
>                                   если perem=9 -> то a
>                                   если perem=c -> то d
>                                   если perem=z -> то 00
>                                   если perem=00 -> 01
>и так далее ...
>Подскажите как это делается. Или дайте ссылку на похожие скрипты.
>Спасибо большое.

Kak nibud tak:

#!/bin/sh

perem=0
perem1=0
test(){
        local var=$1
        case $var in
                4)setvar $2 5;;
                5)setvar $2 7;;
                9)setvar $2 a;;
        esac
return 0
}
test 4 perem1
echo $perem1
test 5 perem1
echo $perem1
test 9 perem1
echo $perem1
exit 0

Hotja esli 4estno to ja ne sovsem ponimaju dla 4ego eto nado.
P.S. Vmesto
test 4 perem1
echo $perem1
test 5 perem1
echo $perem1
test 9 perem1
echo $perem1
stavi6 while ili for cikl i vse.