🖥️ Как быстро найти и устранить петли в Bash-скриптах
Привет, любители автоматизации! 🚀
Если ваши скрипты начинают вести себя странно или долго висят — значит именно время разобраться, где зарыт «змейка»! Сегодня расскажу о простых способах выявлять бесконечные циклы и тормоза в bash.
- *Проверка выполнения*: включи трассировку команд перед запуском скрипта:
set -x
Это позволить видеть каждую операцию в реальном времени.
- *Лимит циклов*: добавляй счетчики в циклы:
counter=0
while [ $counter -lt 1000 ]; do
# твой код
((counter++))
done
Это защитит тебя от вечных зацикливаний.
- *Временные ограничения*: запускать скрипт с таймаутом — легко с помощью встроенной команды:
timeout 10s ./script.sh
Если команда за лимит не завершилась — автоматом прервается.
- *Логирование*: вставляй вывод в лог-файл, чтобы понять, где тормозит:
./script.sh >> script.log 2>&1
Обнаружить проблему сразу легче, когда всё фиксируется.
- *Используй ps и top*: если скрипт «подвис» — проверь его как обычно:
ps aux | grep script.sh
top
Поняв, где завис — быстро исправляешь.
И помни, даже в автоматизации важно знать — где зарыт собака. А ты уже научился делать скрипты без вечных циклов или нет?
Пригласите подписаться на наш канал https://t.me/LinuxSkill — больше статей о Linux, а также в боте https://t.me/gradeliftbot — вакансии для системных админов!
📩 Завтра: Как настроить Fail2Ban за 5 минут! Включи 🔔 чтобы не пропустить!