WebClub - Всероссийский Клуб Веб-разработчиков
WebClub.RU » Архив » Условный оператор ("if")

Условный оператор ("if")


Дата публикации: 17-03-2013

В общем случае оператор "if" имеет структуру

if условие
then список
[elif условие
then список]
[else список]
fi
Здесь "elif" сокращенный вариант от "else if" может быть использован наряду с полным, т.е. допускается вложение произвольного числа операторов "if" (как и других опреаторов). Разумеется "список" в каждом случае должен быть осмысленный и допустимый в данном контексте.

Конструкции

[elif условие
then список]
и

[else список]
не являются обязательными (в данном случае для указания на необязательность конструкций использованы квадратные скобки - не путать с квадратными скобками команды "test"!).

Самая усеченная структура этого оператора

if условие
then список
fi
если выполнено условие (как правило это ком получен код завершения "0", то выполняется "список", иначе он пропускается.

Обратите внимание, что структура обязательно завершается служебным словом "fi". Число "fi", естественно, всегда должно соответсвовать числу "if".

Примеры.

Пусть написан расчет "if-1"

if [ $1 -gt $2 ]
then pwd
else echo $0 : Hello!
fi
Тогда вызов расчета

if-1 12 11
даст

/home/sae/STUDY/SHELL
а

if-1 12 13
даст

if-1 : Hello!
Возможно использовать в условии то свойство shell, что команды могут выдавать различный код завершения. Это напоминает приемы программирования на Си. Пусть расчет "if-2" будет

if a=`expr "$1" : "$2"`
then echo then a=$a code=$?
else echo else a=$a code=$?
fi
тогда вызов


if-2 by by

даст


then a=2 code=0

а


if-2 by be

даст
else a=0 code=1

Еще пример на вложенность


###
# if-3: Оценка достижений

echo -n " А какую оценку получил на экзамене?: "
read z
if [ $z = 5 ]
then echo Молодец !
elif [ $z = 4 ]
then echo Все равно молодец !
elif [ $z = 3 ]
then echo Все равно !
elif [ $z = 2 ]
then echo Все !
else echo !
fi

Можно обратить внимание на то, что желательно использовать
сдвиги при записи программ, чтобы лучше выделить вложенность
структур.

Популярное

Не так давно в сети появился новый сервис, под названием Dead Man Zero. Этот сервис сделал...
Рынок социальных площадок уже давно стал стабильным. Несмотря на то, что время от времени...
Artisteer 4 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Март 2017 (1)
Февраль 2017 (3)
Январь 2017 (1)
Август 2016 (1)
Май 2016 (2)
Ноябрь 2015 (1)

Карта сайта: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41

Друзья сайта

Хотите продать свой сайт?
- Мы быстро и удобно для Вас сможем его купить:
  • Заявка на продажу сайта
  • Раcсматриваем цены на каждый сайт в индивидуальном порядке.

    Случайная цитата

    Неизвестный автор:

    "Интернет – пункт приёма, обмена и сбыта краденого остроумия."

    Опрос

    Какой текстовый редактор Вы используете?

    OpenOffice
    AbiWord
    Notepad++
    UltraEdit
    PSPad
    Microsoft Office
    Microsoft Блокнот
    Другой...