@kkoshakk

Как сделать сообщение об ошибке в Bash?

Как сделать, что бы при ошибке установки через 10 сек повторялась попытка установки, а после неудачных трех попыток выводилось сообщение об ошибке?

#!/bin/bash

error_checking () {
if [ "$?" -eq "0" ];
then
echo "Success"
else
echo "Failure"
fi
}

packageInstalled () {
numberOfPackages=`apt list --installed | grep $1 | wc -l`
if [ "$numberOfPackages" -gt "0" ];
then
echo "Nginx ALREADY EXISTED" && nginx -v
else
echo "Installing NGINX package From a Default Ubuntu Repository"
apt -y install $1 > /dev/null 2>&1
error_checking
fi
}

packageInstalled nginx-extras
  • Вопрос задан
  • 84 просмотра
Пригласить эксперта
Ответы на вопрос 2
Avrong
@Avrong
Для записи в stederr:
echo "Error!" 1>&2

Выход из скрипта с определенным кодом:
exit 111

Для 3 попыток можно сделать цикл for со счетом до 3, break если все прошло успешно
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега bash
build engineer
apt -y install $1 > /dev/null 2>&1
error_checking

Вот эту часть оберните в цикл до трех, с паузой. Если все три раза неудачные - то выход с ошибкой.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
EBC Group Екатеринбург
от 100 000 до 110 000 ₽
FunBox Москва
от 120 000 ₽
FunBox Санкт-Петербург
от 120 000 ₽