TGViewer
BashMaster BashMaster @bash_help · 8.84K subscribers
Post #1160 2.14K
⚙️ trap — обработка ошибок в Bash скриптах

✔️Скрипт упал на середине и оставил временные файлы или висящие процессы? trap ловит сигналы и выполняет очистку перед завершением.

▶️Очистка при выходе
#!/bin/bash

TMPFILE=$(mktemp)

trap 'rm -f "$TMPFILE"; echo "Очистка выполнена"' EXIT

echo "данные" > "$TMPFILE"
# даже если скрипт упадёт — файл удалится

▶️Ловим Ctrl+C
#!/bin/bash

trap 'echo " Прервано"; exit 1' INT

echo "Нажми Ctrl+C..."
while true; do
sleep 1
done

▶️Ловим ошибки с номером строки
#!/bin/bash
set -e

trap 'echo "Ошибка в строке $LINENO: $BASH_COMMAND"' ERR

echo "Шаг 1: ок"
ls /несуществующий_путь # ← ошибка тут
echo "Шаг 2: не выполнится"

# Вывод: Ошибка в строке 6: ls /несуществующий_путь

💠$LINENO — номер строки где произошла ошибка
💠$BASH_COMMAND — команда которая вызвала ошибку

▶️Основные сигналы
EXIT  — любое завершение скрипта
INT — Ctrl+C
TERM — kill
ERR — ошибка (если set -e)


🖼️ Ссылка на источник

🔨 bash_help
  • 🔥 7
  • 👍 5
  • ✍ 2
More from @bash_help
  1. Oct 18, 2026АЙТИШНИКИ БЕСПЛАТНОЕ ОБУЧЕНИЕ Проект «Terminal» стал крупнейшей библиотекой бесплатного об…
  2. Oct 15, 2026⚙️ IxeRam ✔️Высокопроизводительный терминал-ориентированный сканер памяти и отладчик для L…
  3. Oct 15, 2026👩‍💻 Всем программистам посвящается! Вот 14 авторских обучающих IT каналов по самым востр…
  4. Oct 14, 2026⚙️ bash-agent ✔️Минималистичная среда выполнения для AI-агента, которая написана на чистом…
  5. Oct 11, 2026⚙️ PortPal ✔️Нативный десктопный монитор портов, который помогает быстро понять, какие про…
  6. Oct 11, 2026👀Ты давно мечтал обучиться этичному хакингу? ⚠️Мы нашли для тебя ЛУЧШЕЕ ПРЕДЛОЖЕНИЕ на ры…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →