Онлайн-рабочие станции OnWorks Linux и Windows

Логотип

Бесплатный хостинг в Интернете для рабочих станций

<Предыдущая | Содержание: | Следующая>

Операторы управления: еще один способ разветвления

bash предоставляет два управляющих оператора, которые могут выполнять ветвление. && (И) и || Операторы (ИЛИ) работают так же, как логические операторы в составной команде [[]]. Это синтаксис:

command1 && command2

и

command1 || command2

Важно понимать их поведение. С && оператор, command1 выполняется и command2 выполняется, если, и только если, command1 успешно. С || оператор, command1 выполняется и command2 выполняется, если, и только если, command1 неудачно.

На практике это означает, что мы можем сделать что-то вроде этого:



[я @ linuxbox ~] $ mkdir temp && cd temp

[я @ linuxbox ~] $ mkdir temp && cd temp


Это создаст каталог с именем температура, и в случае успеха текущий рабочий каталог будет изменен на температура. Вторая команда выполняется, только если MkDir команда выполнена успешно. Аналогично, такая команда:



[я @ linuxbox ~] $ [[-d temp]] || mkdir temp

[я @ linuxbox ~] $ [[-d temp]] || mkdir temp


проверит наличие каталога температура, и только если тест не пройден, каталог будет создан. Этот тип конструкции очень удобен для обработки ошибок в сценариях, о чем мы поговорим подробнее в следующих главах. Например, мы могли бы сделать это в скрипте:


[-d temp] || выход 1

[-d temp] || выход 1


Если скрипту требуется каталог температура, и он не существует, то скрипт завершится со статусом выхода, равным единице.


Лучшие облачные вычисления для ОС в OnWorks: