Date: Mon, 18 Dec 2000 11:51:27 +0100 From: Livens Wim <WLivens@colt-telecom.be> To: 'Dave Wilson' <davew@sai.co.za>, freebsd-isp@FreeBSD.ORG Subject: RE: Off topic - shell skills Message-ID: <DFCEEAEE7285D411884200508BEF01E308ADA1@COLTBEEXCH01>
next in thread | raw e-mail | index | archive | help
> How do I write a shell script that will change:
>
> mail IN A 10.1.1.58
>
> to:
>
> mail IN A 10.0.0.1
>
>
> ?
>
> I need this script to parse through each zone, so when it
> finds "10.1.1.58"
> in a zone it will change the "10.1.1.58" to "10.0.0.1".
> Please help if you can.
Just to give you an awk-alternative: pipe your zonefiles through this:
awk '/10.1.1.58/ {if ($1=="mail"&&$2=="IN"&&$3="A") print
$1"\t"$2"\t"$3"\t10.0.0.1"; else print $0;} !/10.1.1.58/ {print}'
It's probably far from optimal but it will not just change *any* occurance
of that ip address, as in the sed example; only the A records for hosts
named "mail".
--
Wim Livens
Internet Engineer
COLT Telecom
Brussels
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-isp" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DFCEEAEE7285D411884200508BEF01E308ADA1>
