Bash

Bash 腳本輸出

  • September 21, 2021

所以我的 bash 腳本不是最好的,但以下腳本從文本文件中獲取 IP 地址並將輸出提供給 shell,並僅顯示解析的 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

謝謝

您可以嘗試以下方法:

#!/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

引用自:https://unix.stackexchange.com/questions/669988