我在 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
- 第一个
grep
只留下包含“IN”的行。 - 第二个删除问题部分中
grep
以 开头的行。;
- 该
tr
命令将所有空格替换为逗号。 - 将
>>
所有输出附加到名为 的文件中savedoutput.csv
。
答案2
使用 sed 将输出从 dig 转换为 csv 格式。
$ sed <(dig askubuntu.com) > out.csv \
-nE -e '/^[^;].*IN/{s/[[:blank:]]+/,/g;p}'