目标展开
🎯 `pkg/sdk/targets.go` — 把输入归一为目标列表。
📁 源码:
pkg/sdk/targets.go
函数
| 符号 | 源码 | 说明 |
|---|---|---|
ExpandTargets(targets, opts) | L6 | 批量展开 |
ExpandTarget(target, opts) | L12 | 单个展开 |
展开规则
四类输入自动识别,混合传入也无妨
ExpandTargets 对每个输入字符串按类型分流:URL/域名补 http:// 协议后加入;IP 直接加入;CIDR(如 192.168.1.0/30)展开为 IP 列表;文件路径(存在且可读)逐行读取。
→ 一条命令里 URL、网段、文件混着传都行,统一成 []string 喂给 BatchCapture。
与批量采集配合
ExpandTargets 的输出喂给 BatchCapture:
示例
go
targets := sdk.ExpandTargets([]string{
"example.com",
"192.168.1.0/30",
"urls.txt",
}, nil)