在 awk 脚本中读取 shell 命令的输出

在 awk 脚本中读取 shell 命令的输出

我有一个文本文件,其中列出了 IP 地址和其他信息。

我正在使用 awk 脚本来处理此列表并输出各种计算。我想dig -x从 awk 脚本内部调用并使用返回的值。

我努力了

hostname = system("dig +short -x" ip_address);

但实际发生的是——

  1. 调用 dig 会在 shell 中打印一行

  2. 主机名保持为空

答案1

已经搞清楚了,但请随意添加更好的答案

cmd = "dig +short -x " ;
cmd ip_address | getline hostname;
close(cmd)

然后我可以在脚本的任何地方使用主机名。

相关内容