Bashスクリプト出力

Bashスクリプト出力

したがって、私のbashスクリプトは最高ではありませんが、次のスクリプトはテキストファイルからIPアドレスを取得し、出力をシェルに供給し、解決されたDNSホスト名のみを表示します。

#!/bin/bash
while read line
do
dig @1.2.3.4 -x  "$line" +short
done

出力は次のとおりです。

one.foo.local
two.foo.local
three.foo.local

同じ行にあるDNS名で解決されるアドレスのIPアドレスを次のように印刷するにはどうすればよいですか?

one.foo.local 2.3.4.5
two.foo.local 6.7.8.9
three.foo.local 7.5.3.1

ありがとう

答え1

次のように試すことができます。

#!/bin/bash
while read line
do
nme=$(dig @1.2.3.4 -x  "$line" +short)
if [ "$(echo "$nme"|wc -c)" -gt 1 ]
   then
    echo "$nme $line"
fi 
done<input_file

関連情報