Naprej Nazaj Kazalo

7. Zanke for, while in until

To poglavje razlaga zanke for, while in until.

Zanka for se nekoliko razlikuje od takšne zanke v drugih programskih jezikih. Omogoča vam zanko, ki se ponovi za vsako 'besedo' v določenem nizu.

While ponavlja ukaze, dokler je nadzorni izraz ovrednoten kot resničen; ustavi se, ko postane izraz neresničen oziroma ko naleti na ukaz za prekinitev zanke.

Zanka until deluje skoraj enako kot while, z razliko, da se ukazi izvajajo, dokler je nadzorni izraz ovrednoten kot neresničen.

7.1 Primer zanke for

        #!/bin/bash
        for i in $( ls ); do
            echo beseda: $i
        done
        

V drugi vrstici deklariramo spremenljivko i, kateri bomo pripisali različne vrednosti iz $( ls ).

Tretja vrstica bi bila po potrebi lahko tudi daljša oziroma bi se pred 'done' (4) lahko zvrstilo več ukazov.

'done' (4) pove, da je ukazov, ki so uporabljali $i konec in da lahko $i pripišemo novo vrednost.

Ta skript sicer ne počne ničesar koristnega, lahko pa bi mu na primer naročili, naj izpiše le določene datoteke (glej prejšnji primer).

7.2 Zanka for kot v programskem jeziku C

Ta zanka je bolj podobna zanki for v C/perl.

        #!/bin/bash
        for i in `seq 1 10`;
        do
                echo $i
        done    
        

7.3 Primer zanke while

         #!/bin/bash 
         STEVEC=0
         while [ $STEVEC -lt 10 ]; do
             echo Stevec kaze $STEVEC
             let STEVEC=STEVEC+1 
         done
         

Ta skript 'oponaša' dobro znano strukturo 'for' (C, Pascal, perl, itd.)

7.4 Primer zanke until

         #!/bin/bash 
         STEVEC=20
         until [ $STEVEC -lt 10 ]; do
             echo STEVEC $STEVEC
             let STEVEC-=1
         done
         

Naprej Nazaj Kazalo