如何将 DIG 的输出保存为 CSV 格式?

如何将 DIG 的输出保存为 CSV 格式?

我在 Linux 中使用 DIG 命令并获得了我想要的结果,但是如何才能将输出结果写入 CSV 文件并保存它们?

当前输出低于我想要的 csv 文件:

inspectieSZW.nl.        19      IN      A       178.22.85.166
inspectieSZW.nl.        19      IN      A       178.22.85.169
belgique.be.            6940    IN      A       193.191.245.244
belgie.be.              6940    IN      A       193.191.245.244
christiemorreale.be.    3340    IN      A       128.65.195.89
regards.fr.             340     IN      A       137.74.167.22
dragons.jp.             19      IN      A       52.198.194.108
dragons.jp.             19      IN      A       18.182.191.127
j-sm.jp.                79      IN      A       49.212.243.98
ndenter.co.kr.          3341    IN      A       223.26.138.51
semillasdelfuturo.com.co. 341   IN      A       50.62.88.87
redesdamare.org.br.     3342    IN      A       149.56.157.48

答案1

输入如下每个dig命令(将 [HOSTNAME] 替换为您要挖掘的主机名):

dig [HOSTNAME] | grep IN | grep -v ";" | tr -s "[:blank:]" "," >> savedoutput.csv
  1. 第一个grep只留下包含“IN”的行。
  2. 第二个删除问题部分中grep以 开头的行。;
  3. tr命令将所有空格替换为逗号。
  4. >>所有输出附加到名为 的文件中savedoutput.csv

答案2

使用 sed 将输出从 dig 转换为 csv 格式。

$ sed <(dig askubuntu.com) > out.csv \
  -nE -e '/^[^;].*IN/{s/[[:blank:]]+/,/g;p}'

相关内容