Управляючі структури

1. Умовний запуск команд

<команда 1> && <команда 2>

команда 2 працює тільки у випадку успішного завершення команда1

<команда 1> || <команда 2>

команда 2 Працює тілько у випадку неуспішного завершення

команда 1

2. Умовний вираз

if <умова>

then <команди>

С ветвлением:

if <умова>

then <команди>

elif <умова>

then <команди>

………

else <команди>

fi

Приклад

#!/bin/bash

ARGS=2

if [ $# -ne "$ARGS" ] # Перевірка кількості вхідних аргументів.

then

echo "Порядок використанняя: `basename $0` filename column-

number"

exit $E_WRONGARGS

fi

3. Цикл по лічильникам

Оператор for працює небагато не так, як в звичних мовах програмування. Замість того, щоб організовувати збільшення або зменшення на одиницю значення деякої змінної при кожному проході циклу, він при кожному проході циклу присвоює змінній чергове значення із заданого списку слів

for var in <список>

do

<команди>

done

Приклад. Слідуючий скрипт створює файли foo_1, foo_2 и foo_3:

for a in 1 2 3; do

touch foo_$a

done

Приклад

for a in `ls -l`; do

echo $a

done

4. Цикл з предумовою

while [ умова ];

do

<команди>

done

Приклад:

i=1

while [ $i –le 10 ]; do

echo $i;

let i=$i+1

done

while [ “$i”!= “a” ]

do

read i;

done

5. Цикл зпісляумовою

until [ умова ]

do

<команди>

done

Приклад:

i=1

repeat [ $i –ge 10 ]; do

echo $i;

let i=$i+1

done

6. Оператор вибору

Умова не перевіряється. Перевіряється відповідність рядка до шаблону

Case <слово> in

Шаблон 1)

<команди>

;;

Шаблон 2)

<команди>

;;

…..

*)

<команди>

;;

esac

Приклад

read a

case $a in

yes|true) echo “1”

;;

no|false) echo “0”

;;

*) echo “-1”

;;

esac

7. Додатково

Команда break дозволяє виконати безумовний вихід з циклу.

break [n] – вихід з n вкладених циклів

continue

Команда continue приведе до того, що програма негайно перейде до наступної ітерації циклу while або for без виконання решти команд в циклі.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: