Операторы Bash: && vs ; – Понимание их различий с помощью примеров кода

В Bash операторы &&и ;используются для управления выполнением нескольких команд. Позвольте мне объяснить разницу между ними и привести несколько примеров кода:

Оператор

  1. &&:
    Оператор &&позволяет запускать команду только в том случае, если предыдущая команда завершилась успешно (возвращает нулевой статус выхода). ). Если предыдущая команда завершается неудачно (возвращает ненулевой статус выхода), последующая команда не будет выполнена.

    Пример кода:

    command1 && command2

    В приведенном выше примере command2будет выполняться только в том случае, если command1завершится успешно.

  2. Оператор

  3. ;:
    Оператор ;, с другой стороны, просто разделяет несколько команд, позволяя им выполняться последовательно независимо от статуса завершения. предыдущей команды.

    Пример кода:

    command1; command2

    В приведенном выше примере command2будет выполняться независимо от статуса завершения command1.

Дополнительный метод:

    Оператор

  1. ||:
    Оператор ||аналогичен оператору &&, но работает противоположным образом.. Он запускает команду только в том случае, если предыдущая команда завершилась неудачно (возвращает ненулевой статус выхода).

    Пример кода:

    command1 || command2

    В приведенном выше примере command2будет выполняться только в случае сбоя command1.