Есть идея кода:
while true; do
*check variable*
if [ variable == true ]; then
*command1 to execute*
.
.
.
*commandN to execute*
fi
done
Как выполнить command1 только один раз, не выходя из этого цикла?Очевидно, command1 должен выполняться только один раз каждый раз, когда variable true?
EDIT: я не хочу выходить из цикла, потому что он является частьюСкрипт мониторинга для домашнего сервера Debian / устройства хранения данных.Переменная check - это проверка, включено ли VPN-соединение.Или, если в папке есть новый файл.Или, если в систему вошел новый пользователь. Триггеров может быть много.Command1 - отправить уведомление по электронной почте.Или напишите новую строку в пользовательский файл журнала.Опять же, бесчисленные приложения.Я не хочу, чтобы меня отправляли по почте каждую итерацию.Все дело в бесконечной проверке статуса и выполнении команды после изменения статуса.