[devel] shell programming

Денис Смирнов mithraen на freesource.info
Пт Янв 21 15:28:01 UTC 2011


On Fri, Jan 21, 2011 at 01:20:09PM +0300, Алексей Турбин wrote:
Спасибо! Работает! Ура!

Вопрос,  не мог бы ты пояснить вот этот код? С совсем не понимаю что тут за хитрое изобретени с exit trap.

#!/bin/bash
HOST=bla-bla-bla

trouble () {
        trap - EXIT
        kill $id
        date
#       /usr/sbin/rasterisk -x 'core show uptime'
#       /usr/sbin/rasterisk -x 'core show locks'
        gdb  -x gdb.cmd --batch asterisk $(cat /var/run/asterisk/asterisk.pid)
        killall -9 asterisk
        exit
}

trap 'echo trouble ; trouble >/tmp/$(date "+asterisk-restart-%Y-%m-%d-%s").txt' EXIT
(trap - EXIT; sleep 10; kill $$) &
id=$!
if /usr/bin/sipsak -s sip:nobody@$HOST
then
    kill $id
    trap - EXIT
    exit
fi
#
trap - EXIT
trouble >/tmp/$(date "+asterisk-restart-%Y-%m-%d-%s").txt
exit


-- 
С уважением, Денис

http://mithraen.ru/
----------------------------------------------------------------------------
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 198 байтов
Описание: Digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20110121/8cf8368b/attachment.bin>


Подробная информация о списке рассылки Devel