[devel] control и multi-line regexp
Afanasov Dmitry
ender на altlinux.org
Вс Май 24 15:43:06 MSD 2009
On Sun, May 24, 2009 at 02:49:18PM +0400, Max Ivanov wrote:
> Возникла задачка поуправлять через control параметром в ini файле,
> причем только в одной его секции (параметр с тем же именем есть во
> многих). Для этого необходим многоуровневый regexp, как его
> реализовать в egrep я не нашел =( Как быть?
control тупо запускает этот facility, передавая ему параметры. вся shell
машинерия только для удобства их обработки.
хорошо проверяется по sh -x /usr/sbin/control postfix <cmd>
postfix для примера
требования к скрипту facility:
$FACILITY list - вывод списка фасилитей (для postfix: local server filter)
$FACILITY status - текущее состояние (в моем случае: local)
$FACILITY summary - вывод summary
$FACILITY - текущее состояние, как и в status
$FACILITY <что угодно> - установить состояние в <что угодно>. вывод не
обязателен, exit по состоянию
простейший пример фасилити:
#!/bin/sh
[ -f "/tmp/test" ] || echo local > "/tmp/test"
case $1 in
list)
echo local remote
;;
''|status)
cat "/tmp/test"
;;
summary)
echo "Test script facility"
;;
local|remote)
echo $1 > "/tmp/test"
;;
*)
echo unknown command "$1"
exit 1
;;
esac
делает только одно - пишет и читает из /tmp/test статус.
--
С уважением
Афанасов Дмитрий
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 198 байтов
Описание: Digital signature
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20090524/8a4ef619/attachment-0001.bin>
Подробная информация о списке рассылки Devel