Ответ
Двойной амперсанд && — это оператор логического И в командной оболочке (shell). Он используется для условного выполнения команд: вторая команда выполнится только если первая завершится успешно (с кодом возврата 0).
Пример из практики DevOps:
# Собрать образ и, только если сборка прошла успешно, отправить его в registry
docker build -t myapp:latest . && docker push myapp:latest
# Запустить тесты и, если они пройдены, выполнить деплой
make test && ansible-playbook deploy.yml
Альтернативные операторы:
;— выполняет команды последовательно, независимо от результата предыдущей.echo 'Шаг 1'; echo 'Шаг 2' # Оба echo выполнятся всегда||— оператор логического ИЛИ. Вторая команда выполнится только если первая завершится с ошибкой (не нулевой код возврата).# Попробовать перезапустить службу, а если не вышло — записать в лог systemctl restart nginx || echo "$(date): Restart failed" >> /var/log/nginx/errors.log
Использование && критически важно для создания надежных скриптов развертывания и CI/CD пайплайнов, чтобы предотвратить выполнение последующих шагов после сбоя.