Как в bash используя условие if выполнить команду в зависимости от того успешно выполнена предыдущая команда или нет ?

В bash вы можете использовать конструкцию if для выполнения команды в зависимости от того, успешно ли выполнена предыдущая команда или нет. Для этого используется проверка кода завершения предыдущей команды, который хранится в переменной $?.

Общий синтаксис выглядит следующим образом:
	
#!/bin/bash

command1
if [ $? -eq 0 ]; then
    # Выполняется, если command1 завершилась успешно (код завершения равен 0)
    command2
else
    # Выполняется, если command1 завершилась неуспешно (код завершения не равен 0)
    command3
fi
В этом примере command1 - это предыдущая команда, результат которой будет проверяться. Если код завершения этой команды равен 0, то будет выполнена command2. Если код завершения не равен 0, то будет выполнена command3.

Пример использования:
	
#!/bin/bash

ls file.txt
if [ $? -eq 0 ]; then
    echo "Файл существует"
else
    echo "Файл не найден"
fi
В этом примере команда ls file.txt проверяет существование файла file.txt. Если файл существует (код завершения равен 0), будет выведено сообщение "Файл существует". Если файл не найден (код завершения не равен 0), будет выведено сообщение "Файл не найден".