Логические операторы применяются для комбинирования различных условий в скриптах, что дает возможность принимать более сложные решения. Наиболее распространённые логические операторы в скриптовых оболочках — это логическое ИЛИ (||) и логическое И (&&).
Эти операторы находят применение в условных операторах, таких как if, while и until, а также в последовательных командах. Последовательные команды представляют собой метод, при котором несколько команд выполняются последовательно в зависимости от успешности или неуспешности предыдущих.
- Логический оператор ИЛИ (||) используется для выполнения следующей команды, только если предыдущая завершилась с ошибкой (возвращает ненулевой код завершения).
- Логический оператор И (&&) применяется для выполнения следующей команды, только если предыдущая команда была успешной (возвращает нулевой код завершения).
Например, рассмотрим следующий сценарий:
#!/bin/bash
# Пример использования логических операторов
# Проверка доступности файла
if [ -f "file.txt" ] && [ -r "file.txt" ]; then
echo "Файл доступен и читаем."
else
echo "Файл недоступен или не читаем."
fi
# Выполнение команд с логическим ИЛИ
command1 || command2
В этом примере первая часть скрипта проверяет, существует ли файл и доступен ли он для чтения. Если оба условия истинны, выполняется первая команда. Если хотя бы одно из условий ложно, выводится сообщение об ошибке. Вторая часть демонстрирует использование оператора ИЛИ: если command1 завершится с ошибкой, будет выполнена command2.
Использование логических операторов значительно упрощает структуру скриптов и позволяет избежать дублирования кода, что делает его более читаемым и поддерживаемым.
Содержание статьи
Применение логического ИЛИ (||) в оболочных скриптах
Логическое ИЛИ в bash-скрипте используется с оператором -o. Ниже представлен простой скрипт, демонстрирующий использование оператора логического ИЛИ (||) между двумя условиями:

