Для этого используется встроенная функцияbreak
.
for i in {1..10}; do
sleep 10
OUTPUT=$(systemctl is-active etcd)
if [[ $OUTPUT == active ]]; then
echo "The result is successful"
break
else
echo "The result is unsuccessful"
fi
done
Чтобы скрипт работал в sh (, чтобы он работал в cron ), выполните:
#!/bin/sh
eval $(date +'m=%m d=%d dow=%w')
if ( [ "$m" -eq 03 ] || [ "$m" -eq 10 ] ) && [ "$dow" -eq 0 ] && [ "$d" -gt 24 ]
then
exit 1
fi