Используйте форму модификатора if
:
perl -ne 's/stuff/changed/, print if /patternmatch/'
or, вы можете использовать and
и or
для управления потоком:
perl -ne '/patternmatch/ and s/stuff/changed/, print'
В ISC DHCP это не «ошибка», а особенность. Файл конфигурации читается только при перезапуске демона.
Таким образом, если вы имеете дело только с текстовым файлом конфигурации, вы можете предоставить новые IP-адреса/MAC-адреса только путем добавления в текстовый файл конфигурации и перезапуска демона DHCP.
Более чистый и современный подход может заключаться в использовании вместо ISC -DHCP сервера Kea DHCP, также от ISC. Kea также имеет крюковый механизм и разъемы -, которые могут соответствовать (или не соответствовать )вашим потребностям.
Kea DHCP Server Kea is an open source DHCPv4/DHCPv6 server being developed by Internet Systems Consortium. Kea is a high-performance, extensible DHCP server engine that is designed to be easily modified and extended with hooks libraries.
Kea is free open source, and we welcome community engagement, via the Kea-users mailing list, this wiki, and our Github repository. There is a small core team of dedicated software engineers developing it and we need your contributions and support contracts to support them.
Серверной частью может быть MySQL, и вы можете иметь дело с SQL-запросами вместо того, чтобы иметь дело с текстовым файлом и (повторно )запуском демона DHCP.
ПС. Для подготовки вещей в DHCP в прошлом я использовал взломанную версию DHCP провайдера, чтобы сидеть поверх MySQL, что было очень специфично для индустрии кабельных провайдеров, но, к сожалению, проект был заброшен. В настоящее время Kea должна предлагать аналогичные функции.