Робота з сигналами
Матеріал з Wiki TNEU
Версія від 23:24, 20 вересня 2012; Donserg (Обговорення • внесок)
Можливості bash дозволяють перехоплювати й обробляти сигнали за допомогою сценарію. Під сигналами розуміється засіб, що дозволяє повідомляти процесам про різні події в операційній системі.
Список всіх сигналів можна отримати, ввівши команду:
$ Kill-l
Перехоплювати сигнали дозволяє команда trap. Синтаксис команди:
trap [-lp] [команди сигнал сигнал ...]
Ключ -l виводить список імен і номерів сигналів, а ключ -p виводить список команд, пов'язаних з кожним сигналом. Сигнали слід вказувати за іменами або за номерами. Система завжди якимось чином реагує на отримання сигналу, тобто виконує команду. Якщо ж замість команди вказати порожній рядок, то сигнал просто буде проігнорований.
Список найважливіших сигналів:
HUP - hangup, відбій; INT - interrupt, переривання; QUIT - вихід; ILL - illegal instruction, програмна помилка; FPE - floating point exception, обчислювальна помилка; KILL - вбити процес; TERM - termination, завершити процес; CHILD - завершився дочірній процес.
Приклад:
trapINT # ігнорувати сигнал INT