IP 地址批量解析 - 脚本?

IP 地址批量解析 - 脚本?

我有一个以逗号分隔的 CSV 文件内的 IP 地址列表。它们都位于 A 列内。 (ip.csv)

我想使用 WHOIS,或者如果有更好的方法,请建议检查每个 IP 地址,然后将详细信息输出到新的 csv 文件 (resolved.csv)。

WHOIS 记录中的每个描述符都需要一列,例如 inetnum、网络名、descr、国家/地区...

最终我希望将结果解析为某种形式的有用数据。

安装 WHOIS 后

 `whois 86.63.229.33`

效果很好,但这对于新用户来说很复杂。谢谢

答案1

我写了一个小片段,与 whois 生成的几行相匹配。根据您的需要进行调整

#!/usr/bin/env bash

shopt -s extglob  # needed to use  @(inetnum|country....)
while read -r line
 do 
   if [[ $line == @(inetnum|country|desc)* ]]; then
    echo "$line"
   fi
 done < <(awk -F, '{system("whois " $1)}' your_csv_file )

相关内容