mkdir -p "$APPLICATION_DIRECTORY/conf"
пытается создать именованный каталог, создавая при этом любые отсутствующие родительские каталоги.Как и каждая команда, она имеет целочисленное состояние выхода, где 0 указывает, что каталог был успешно создан, а ненулевое значение указывает на ошибку какого-либо рода.
Команда if
проверяет состояние выхода своей команды, а не логическое значение, как в большинстве других языков программирования.Оператор !
отменяет состояние выхода: ненулевое состояние выхода преобразуется в 0, а состояние выхода 0 преобразуется в 1.
Другими словами,
if ! mkdir -p "$APPLICATION_DIRECTORY/conf"; then
echo "There was an error creating the directory"
else
echo "The directory was successfully created"
fi