11.04.2013 Views

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}<br />

Appen<strong>di</strong>ce A. Script aggiuntivi<br />

_eia_tst=${_eia_new[${_eia_cnt}]}<br />

if _eia_tst=$(name_fixup ${_eia_tst})<br />

then<br />

_eia_name[${#_eia_name[@]}]=${_eia_tst}<br />

fi<br />

done<br />

fi<br />

done<br />

unique_lines _eia_name _eia_name # Scrub duplicates.<br />

e<strong>di</strong>t_exact chk_name _eia_name # Scrub pen<strong>di</strong>ng detail.<br />

e<strong>di</strong>t_exact known_name _eia_name # Scrub already detailed.<br />

if [ ${#_eia_name[@]} -gt 0 ] # Anything new?<br />

then<br />

uc_name=( ${uc_name[@]} ${_eia_name[@]} )<br />

pend_func expand_input_name ${1}<br />

_trace_log[${#_trace_log[@]}]=’# # # Added ’${#_eia_name[@]}’ unchecked name input(s<br />

fi<br />

e<strong>di</strong>t_exact chk_address _eia_addr # Scrub pen<strong>di</strong>ng detail.<br />

e<strong>di</strong>t_exact known_address _eia_addr # Scrub already detailed.<br />

if [ ${#_eia_addr[@]} -gt 0 ] # Anything new?<br />

then<br />

chk_address=( ${chk_address[@]} ${_eia_addr[@]} )<br />

pend_func detail_each_address ${1}<br />

fi<br />

return 0<br />

# The parse-it-yourself zone reply.<br />

# The input is the chk_name list.<br />

# detail_each_name <br />

detail_each_name() {<br />

[ ${#chk_name[@]} -gt 0 ] || return 0<br />

local -a _den_chk # Names to check<br />

local -a _den_name # Names found here<br />

local -a _den_address # Addresses found here<br />

local -a _den_pair # Pairs found here<br />

local -a _den_rev # Reverse pairs found here<br />

local -a _den_tmp # Line being parsed<br />

local -a _den_auth # SOA contact being parsed<br />

local -a _den_new # The zone reply<br />

local -a _den_pc # Parent-Child gets big fast<br />

local -a _den_ref # So does reference chain<br />

local -a _den_nr # Name-Resource can be big<br />

local -a _den_na # Name-Address<br />

local -a _den_ns # Name-Service<br />

local -a _den_achn # Chain of Authority<br />

local -i _den_cnt # Count of names to detail<br />

local -i _den_lmt # In<strong>di</strong>rection limit<br />

local _den_who # Named being processed<br />

local _den_rec # Record type being processed<br />

local _den_cont # Contact domain<br />

local _den_str # Fixed up name string<br />

local _den_str2 # Fixed up reverse<br />

692

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!