Good afternoon!
I have been lurking in this forum for awhile now. I have just recently started posting. I think this is a really good site. With that being said, I don't like to just run and get an answer before I try my best first.
I have poured some blood, sweat and tears into this....well at least tears anyway.
I am doing queries in MYSQL, and I need to have the output in a certain format.
Here is what I am trying to accomplish:
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
test.com,21600,604800,3600,86400,86400,dns@test.com,,,,,,False,False,Use Server Value,Use Server Value,Use Server Value,Use Server Value,No,,,Use Server Value,Use Server Value,Use Server Value,Warn,No,,,False,Use Server Value,Any,Any,Any,No,,,False,Any,Any,Any,Warn,No,,,False,False,Use Server Value,Any,Any,Any,No,,,False,False,Use Server Value,Any,Any,Any,No,,,False,Any,No,0,No,0,,,,ns1.test.com,P,0,ns2.test.com,S,0,ns3.test.com,S,0,
That is two lines. I need it to be like this:
header line
output line
blank line
header line
output line
blank line
etc, etc
Here is my script, thus far:
#!/usr/bin/bash
#
echo -n "Enter the DNS server name (ns1.blah.com, for example) and press [ENTER]: "
read dnsservername
echo -n "Enter the domain type (Public, for example) and press [ENTER]: "
read dnsdomaintype
echo -n "Enter the zone type (master, for example) and press [ENTER]: "
read dnszonetype
dnsserverid=`/opt/incontrol/mysql/bin/mysql -u username -ppassword instancename --skip-column-names -e \
"select id from dnsserver where name like '%$dnsservername%';"`
dnsdomaintypeid=`mysql -u username -ppassword instancename --skip-column-names -e \
"select id from dnsdomaintype where name like '$dnsdomaintype%';"`
header=`echo "Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,\
Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,\
Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,\
DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,\
allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,\
allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,\
BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,\
allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,\
Import External Updates,allow-query,allow-transfer,allow-update,check-names,\
notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,\
Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,\
notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,\
Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,\
notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,\
allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,\
Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,\
DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,\
Sec DNS Update Flag,End DNS Servers"`
#
#
#
query=`/opt/incontrol/mysql/bin/mysql -u username -ppassword instancename -e \
"select DISTINCT dnsdomain.name as 'Domain Name', \
dnsdomain.refresh as 'Refresh Time', \
dnsdomain.expire as 'Expire Time', \
dnsdomain.retry as 'Retry Time', \
dnsdomain.DEFAULTTTL as 'Default TTL', \
dnsdomain.negcachettl as 'Negative Cache TTL' \
from dnsdomain \
left join dnsdomaintype \
on dnsdomain.DNSDOMAINTYPEID=DNSDOMAINTYPE.id \
left join dnsview \
on dnsview.id=dnsdomain.DNSDOMAINTYPEID \
left join dnszone \
on dnszone.dnsdomainid=dnsdomain.id \
left join dnsserver \
on dnsview.dnsserverid=dnsserver.id \
left join zonestatus \
on zonestatus.dnsdomainid=dnsdomain.id \
where zonestatus.dnsserverid='$dnsserverid' \
and dnsdomaintype.id='$dnsdomaintypeid' \
and dnszone.type = '$dnszonetype'"`
echo "$header"
echo "$query"
echo ""
echo "$header"
echo "$query"
Here is what I get when I run that:
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
255.in-addr.arpa. 3600 604800 900 14400 300
28.in-addr.arpa. 7200 1209600 900 14400 300
10.in-addr.arpa. 10800 604800 3600 86400 600
time.com. 10800 604800 3600 3600 3600
news.com. 3600 86400 3600 3600 3600
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
How can I get it to it this way:
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
255.in-addr.arpa. 3600 604800 900 14400 300
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
28.in-addr.arpa. 7200 1209600 900 14400 300
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
10.in-addr.arpa. 10800 604800 3600 86400 600
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
time.com. 10800 604800 3600 3600 3600
Domain Name,Refresh Time,Expire Time,Retry Time,Default TTL,Negative Cache TTL,Zone e-mail address,Start Zone Options,Extensions,Prefix of zone db file,Postfix of zone db file,ALU DNS 6.0 Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,BIND-8.X Options,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,BIND-9.X Options,DNSSEC enabled zone,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 3.X Options,Import External Updates,allow-query,allow-transfer,allow-update,check-names,notify,zone block of named.conf,LUCENT DNS 4.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,LUCENT DNS 5.X Options,DNSSEC enabled zone,Import External Updates,allow-notify,allow-query,allow-transfer,allow-update,notify,zone block of named.conf,WINDOWS 2000 DNS Options,aging,allow-transfer,allow-update,no-refresh-interval,notify,refresh-interval,zone-options,End Zone Options,Start DNS Servers,Primary DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,DNS Server Name,DNS Server Type,Sec DNS Update Flag,End DNS Servers
news.com. 3600 86400 3600 3600 3600
I know that I still need to change the zone line, for example:
news.com. 3600 86400 3600 3600 3600
I plan on running that through awk, since most of the data that is usable is the first 6 sections anyway, and the rest at the end is pretty much the same.
Can someone please help?
If I need to further explain, please let me know if I didn't make any sense.
Thanks again!!!!