Ajuda a validar os nomes de host do arquivo .csv

0

Aqui está o meu código .... Estou tendo problemas ao colocar nomes de host inválidos detectados em um arquivo e, em seguida, nslookup nomes de host válidos. Quando executo este script, estou tentando fazer com que ele ignore os nomes de host inválidos e faça um nslookup em válido. Eu tentei usar "host, bem como cavar em vez de nslookup, mas ainda não vendo resultados

#!/bin/sh
#Query Theater DB for cnames

#Pulling cnames
#Lets use sed to clean up and remove EMPTY strings, "", @, and * 

mssql -f csv -c ~/applications/mssql/mssql.json -q "SELECT * FROM Cname"  | cut -f 3 -d "," | sed '/^\s*$/d' | sed 's/[""]//g' | sed 's/[@]//g' | sed 's/[*]//g' | sort | uniq  > /tmp/final.csv

#Added this to get rid of the hidden M from /tmp/final.csv

dos2unix /tmp/final.csv

#Validating cnames
while read -r host
do

  echo $host | egrep "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$" >/dev/null 2>&1
  if [ $? -eq 0 ]  
  then  
    echo "$host" >> /tmp/cnames.csv  
  else  
    echo "$host is not a valid hostname" >> /tmp/badcnames.csv  
  fi  

done < /tmp/final.csv

#Lets validate good hostnames

for i in 'cat /tmp/final.csv'; do nslookup $i | grep Name | awk '{print $2}'; nslookup $i | grep Add | grep -v '#' | awk '{print $2}'; done > /tmp/output.csv
    
por jphil1971 21.03.2017 / 20:51

0 respostas