Назад | Перейти на главную страницу

Изменение файлов зоны с помощью sed

У меня есть файл зоны DNS. Мне не удалось изменить тип записи ресурса A на CNAME.

@ IN SOA    ns1.domain.com. webdev.domain.com. (
        2006080101  ; serial
        8H      ; refresh
        2H      ; retry
        1W      ; expire
        4h)     ; minimum ttl

        NS  ns1.domain.com


domain.com      A   192.168.0.1

mail2           A   192.168.0.2

www         CNAME   domain.com

webmail                 CNAME     www

sed -i 's/A/CNAME/g' dns-zone.file

приведенный выше оператор sed изменяет запись ресурса A на CNAME, но CNAME также изменяется на CNCNAMEME ..

Как я могу изменить только запись ресурса A без изменения каких-либо других строк?

Это происходит потому, что A это подстрока CNAME, поэтому регулярное выражение соответствует.

Пытаться sed -i 's/\sA\s/CNAME/g' dns-zone.file, для этого потребуется пробел вокруг A.