我有这个 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 资源记录而不更改任何其他字符串?
答案1
发生这种情况是因为A
是的子字符串CNAME
,因此正则表达式匹配。
尝试一下sed -i 's/\sA\s/CNAME/g' dns-zone.file
,这将需要在 周围留有空格A
。