bash символы “;” и “&”, “&&” и “||”

В категорії Підказки от 14 Вересня, 2014. Автор admin

Выполнить обе команды:

команда1; команда2 # последовательное выполнение
команда1& команда2 # параллельное выполнение

Символ “;” используется для последовательного выполнения нескольких команд: после завершения одной команды начинается выполение другой. Если вместо “;” используется “&”, то команда, сопровождаемая этим знаком, выполняется в фоновом режиме, а выполнение следующей команды начинается немедленно, и, таким образом, две или более команд выполняются параллельно.

Выполнить команду1, и если она выполнилась удачно, выполнить команду2:

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

Выполнить команду1, и если она выполнилась неудачно, выполнить команду2:

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

Как известно, каждая команда возвращает некоторый код завершения, по которому можно судить об “успешности” выполнения. Если на командную строку смотреть как на логическое выражение, значение которого требуется вычислить, где отдельные команды — переменные, принимающие значение “истина” или “ложь”, то знаки “&&” и “||” можно рассматривать как операции логического И и ИЛИ. Отсюда понятна и логика действия этих связок в командой строке: если первая из двух команд, соединенных связкой И, возвращает “ложь”, то результат всего выражения — заведомо “ложь”, поэтому вторая команда не выполняется; аналогично, если первая из двух команд, соединенных связкой ИЛИ, первая выполнилась успешно, то уже известно, что результат всего выражения — “истина”, и вторая команда не выполняется.

Теги:

Структура If…then…else

В категорії Статьї от 16 Квітня, 2012. Автор admin

if…else…fi позволяют вам сделать выбор основанный на справедливости выражения. Как пример, определить существует ли файл или нет, и в зависимости от этого предпринять какие-то действия.

 If…then…else…fi синтаксис:

 if [ условие ]

then

если условие справедливо

выполнить все команды до else или

до fi

else

если условие не справедливо

выполнить все команды до fi

fi

Більше »

Теги: