Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Готовые ответы на экзасмен прога.docx
Скачиваний:
91
Добавлен:
03.07.2016
Размер:
48.47 Кб
Скачать

13 Операторы Условия и перехода в bash

Операторы if | then проверяют код завершения списка команд на «успешное завершение(истина)» что в свою очередь означает «0», и если это так, то выполняет одну или более команд следующих за словом then. Если проверка возвращает «не успешное завершение (ложь)» что в свою очередь означает «1» выполняется else «иначе» если того требует условие. В завершении условия обязательно закрываем его «fi»

Конструкции простой проверки if|then

if [[ condition ]]; then

commands

fi

Конструкции простой проверки if|then|else

1

2 3

4

5

if [[ condition ]]; then

    commands 1

else

    commands 2

fi

14 Арифметические операторы

арифметические операторы:

+ Сложение

- Вычитание

* Умножение

/ Деление

** возведение в степень

% модуль (деление по модулю), возвращает остаток от деления

+= "плюс-равно" (увеличивает(прибавит) значение переменной на заданное число)

-= "минус-равно" (уменьшение значения переменной на заданное число)

*="умножить-равно" (умножить значение переменной на заданное число, результат записать в переменную)

/= "слэш-равно" (уменьшение значения переменной в заданное число раз)

%= "процент-равно" (найти остаток от деления значения переменной на заданное число, результат записать в переменную)

Арифметические операторы очень часто используются совместно с командами expr и let.

Команда let производит арифметические операции над числами и переменными.

exprУниверсальный обработчик выражений: вычисляет заданное выражение (аргументы должны отделяться пробелами). Выражения могут быть арифметическими, логическими или строковыми.

15 Операторы цикла.

Цикл for-in.

Оператор for-in предназначен для поочередного обращения к значениям перечисленным в списке. Каждое значение поочередно в списке присваивается переменной. Синтаксис следующий: for переменная in список_значений do команды done

Цикл while.

Цикл while сложнее цикла for-in и используется для повторения команд, пока какое-то выражение истинно( код возврата = 0). Синтаксис оператора следующий: while выражение или команда возвращающая код возврата do команды done

UNTIL-DO. Эта практически полный аналог цикла WHILE-DO, только выполняется пока какое-то выражение ложно.

16 (Функции)

По сути функция в bash является обычной переменной, но с более широкими  возможностями.

Основное применение – в тех случаях, когда один и тот же код необходимо использовать несколько раз и/или в разных связанных скриптах.

Функция -- это подпрограмма, блок кода который реализует набор операций, своего рода "черный ящик", предназначенный для выполнения конкретной задачи. Функции могут использоваться везде, где имеются участки повторяющегося кода.

function_name () {

command...}

1

two () {

2

echo "Two"

3

}

Сложные функции и сложности с функциями

Функции могут принимать входные аргументы и возвращать код завершения. Доступ к входным аргументам, в функциях, производится посредством позиционных параметров, т.е. $1, $2 и так далее.

Exit и Return код завершения:

Функции возвращают значение в виде кода завершения. Код завершения может быть задан явно, с помощью команды return, в противном случае будет возвращен код завершения последней команды в функции (0 -- в случае успеха, иначе -- ненулевой код ошибки). Код завершения в сценарии может быть получен через переменную $?.

Return Завершает исполнение функции. Команда return может иметь необязательный аргумент типа integer, который возвращается в вызывающий сценарий как "код завершения" функции, это значение так же записывается в переменную $?