Если используемый вами dhcp-сервер настроен на предоставление опции ntp-servers
, вы можете настроить ваш dhclient на запрос ntp-серверов, добавив ntp-servers
к строке запроса по умолчанию в dhclient. conf
, как показано в конце этого примера из Ubuntu Linux (по состоянию на 19.04, но присутствует по крайней мере с 12.04):
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
/etc/ntp.conf
и информация из DHCP будет использована для создания /etc/ntp.conf.dhcp
.
Вашему ntpd нужно указать использовать /etc/ntp.conf.dhcp, если он существует. В версии Ubuntu, которую я использую, это делается через /etc/dhcp/dhclient-exit-hooks.d/ntp
. <-- это файл, который указывает NTPd использовать /etc/ntp.conf.dhcp
, если он существует, и просто использовать /etc/ntp.conf
, если его нет.
Попробуйте это,
sed -r -e "s:([A-Z][a-z]+)\s([A-Z][a-z]+):\2 \1:g" subfile > newsubfile
или вы также можете изменить исходный файл как
sed -i -r -e "s:([A-Z][a-z]+)\s([A-Z][a-z]+):\2 \1:g" subfile
Регулярное выражение ([A-Z][a-z]+)\s([A-Z][a-z]+)
выбирает любые 2 последовательных слова, которые начинаются с заглавной буквы, и sed
меняет их порядок. Посмотрите, соответствует ли это всем вашим тестам. Я провел несколько тестов, и это сработало.