我有一个以逗号分隔的 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 )