私の bash スクリプトでは、さらに ping を実行するために、コマンドの出力からすべてのホスト名を抽出する必要があります。
for host in `echo $MXrecords | awk '{ printf "%s", $0; }'` ; do
ping -c1 $host 2> /dev/null > /dev/null
if [ "$?" -eq "0" ] ; then
answ="OK"
else
answ="BAD"
fi
echo "\t$host [$answ]"
done
しかし、余分な文字列があります:
40 [BAD]
alt2.aspmx.l.google.com. [OK]
30 [BAD]
alt3.aspmx.l.google.com. [OK]
Dig を使用して var MXrecords を取得します。
MXrecords=`dig @$DNSserver $domainName IN MX +short +multiline | awk '{ printf "\t%s\n", $0; }'`