Общий синтаксис выглядит следующим образом:
#!/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), будет выведено сообщение "Файл не найден".