awk 输出的串联
我正在使用正则表达式来解析 NMAP 输出。我想要打开相应端口的 IP 地址。现在我有一个非常简单的方法来做到这一点:
awk '/^Scanning .....................ports]/ {print substr ($2,1,15);}' results.txt
awk '/^[0-9][0-9]/ {print substr($1,1,4);}' results.txt | awk -f awkcode.awk
其中 awkcode.awk 包含从子字符串中提取数字的代码。 第一行打印所有已启动的 ip,第二行给出端口。我的问题是我希望它们相互映射。有什么办法可以做到这一点吗?即使是 sed 脚本也可以。
I'm using regex to parse NMAP output. I want the ip addresses which are up with the corresponding ports open. Now I've a very naive method of doing that:
awk '/^Scanning .....................ports]/ {print substr ($2,1,15);}' results.txt
awk '/^[0-9][0-9]/ {print substr($1,1,4);}' results.txt | awk -f awkcode.awk
where awkcode.awk contains the code to extract numbers out of the substring.
The first line prints all the ips that are up and 2nd gives me the ports. My problem is that I want them mapped to each other. Is there any way to do that? Even a sed script would do.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可能会发现使用“Grepable”输出格式更容易解析:
示例输出:
或者,如果您有 XML 解析器,请使用 XML 输出格式:
示例输出:
You will probably find using the "Grepable" output format to be easier to parse:
Sample output:
Or if you have an XML parser, use the XML output format:
Sample output: