Ethical Hacking Academy · 课时

解析输出

grep 与 cut

第 3 / 4 课13 个步骤

解析输出 是 CoddyKit 上的免费 Ethical Hacking Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Ethical Hacking Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Ethical Hacking Academy 课程共包含 4 节课。

将噪声转化为数据

工具会产生大量文本。让侦察脚本真正有用的技能是解析:只提取您关心的 IP、端口或主机名。

本课重点介绍 grep 和 cut,并使用 sort 和 uniq 进行整理。

使用 grep 过滤

首先只保留相关行。要从 Nmap 输出中提取开放端口,请使用 grep 查找单词 open。

grep 'open' services.txt

使用 grep -o 提取精确匹配

grep -o 只输出每行中匹配的部分,而不是整行。结合正则表达式后,它可以提取 IP 地址等精确标记。

grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' scan.txt

按分隔符使用 cut

cut 会根据分隔符将每一行切分为多个字段,并输出您选择的字段。要从 80/tcp open http 中提取端口号,可以按斜杠进行切分。

echo '80/tcp open http' | cut -d/ -f1   # prints 80

按字符位置使用 cut

cut 也可以使用 -c 按字符范围切分,这对于固定宽度的输出很有用。

echo 'PORT-00443' | cut -c6-10   # prints 00443

串联 grep 和 cut

将 grep 的输出传给 cut,可以从过滤后的行中精确提取一列,例如所有开放端口号。

grep 'open' services.txt | cut -d/ -f1

排序与去重

sort 会对行进行排序,uniq 会删除相邻的重复项(因此应先排序)。添加 -c 可以统计出现次数。

cut -d' ' -f1 access.log | sort | uniq -c | sort -rn

解析可供 grep 处理的 Nmap 输出

Nmap 的可供 grep 处理的格式(-oG)就是为此设计的。每台主机占一行,便于提取活动主机。

grep 'Up' hosts.gnmap | cut -d' ' -f2

使用 sed 和 tr 进行替换

当 cut 无法满足需求时,sed 可以替换模式,tr 可以转换或删除字符,例如将逗号转换为换行符。

echo '80,443,8080' | tr ',' '\n'
sed 's/Nmap scan report for //' hosts.txt

构建干净的目标列表

将它们组合起来:提取存活的 IP 地址、去重,并写入下一个工具可以读取的干净文件。

grep 'Up' hosts.gnmap | cut -d' ' -f2 | sort -u > live_hosts.txt

使用 awk 处理条件列

当您需要同时处理逻辑和列时,awk 可以将二者结合起来。这里的示例只会输出解析列表中大于 1023 的端口。

grep 'open' services.txt | awk -F/ '$1 > 1023 {print $1}'

快速检查

选择正确的字段提取工具。

回顾

您已经学会将工具输出解析为可用数据:

  • grep(以及 -o)可以筛选并提取匹配项。
  • cut 可以按分隔符或字符位置截取字段。
  • sort | uniq -c 可以排序、去重并计数。
  • 将它们串联起来,为下一个工具生成干净的目标列表。

接下来:构建完整的侦察工具。

免费开始

用 AI 导师学习 Ethical Hacking Academy — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
31
课程
111

常见问题解答

「解析输出」课时是免费的吗?

是的 — 「解析输出」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Ethical Hacking Academy 课程的其余内容,请升级到 CoddyKit PRO。 Ethical Hacking Academy 课程共包含 4 节课。

「解析输出」这节课中我会学到什么?

grep 与 cut 你通过在浏览器中直接运行的动手代码来练习 Ethical Hacking Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Ethical Hacking Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Ethical Hacking Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「解析输出」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Ethical Hacking Academy 课中编写并运行代码吗?

能。每节 Ethical Hacking Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 脚本基础
  2. 自动化侦察
  3. 解析输出
  4. 构建侦察工具
← 返回 Ethical Hacking Academy