amn3zi4/prhook

GitHub: amn3zi4/prhook

基于正则模板的文本与文件分类工具,支持递归处理、嵌套分类和排除规则,帮助安全研究人员快速整理和筛选子域名等资产数据。

Stars: 0 | Forks: 0

# prhook 一款通过正则表达式模板对文本和文件进行分类的工具,支持递归、嵌套分类以及自定义分隔符。 ## 安装 ``` git clone https://github.com/amn3zi4/prhook cd prhook chmod +x prhook.sh ``` ## 全局安装 ``` cd prhook sudo make install ``` ## 卸载 ``` cd prhook sudo make uninstall ``` ## 选项 | 标志 | 描述 | | :--- | :--- | | `-t, --template` | 模板文件(必填) | | `-f, --file` | 输入文件或目录 | | `-if, --input-format` | `text` 或 `files`(默认:`text`) | | `-of, --output-format` | `text` 或 `files`(默认:`text`) | | `-o, --output` | 输出目录(默认:`output`) | | `-s, --separator` | 词分隔符(例如 `-s ,`) | | `-r, --recursive` | 递归处理目录 | | `-a, --add` | 添加到已有结果中 | | `-Da, --delete-add` | 在添加前删除旧文件 | | `-Se, --save-empty` | 保留空行 | | `-h, --help` | 显示帮助 | ## 模板格式 - 奇数行 → 分类名称(文件夹名称) - 偶数行 → 用于 `grep -E` 的正则表达式 - 分类名称末尾的 `-` → 排除(`grep -v`) - `/` 用于表示嵌套文件夹 ### 模板示例 (`templates/critical_endpoints.txt`) ``` ADMIN admin|dashboard|console API api|graphql|v1 IGNORE_ADMIN - test|dev|stage ``` ## 使用示例 ### 1) 标准用法 ``` cat examples/subdomains.txt | ./prhook.sh -t templates/critical_endpoints.txt # 输出位于 output/ ``` ### 2) 使用自定义分隔符 ``` ./prhook.sh -s "\. " -t templates/apples.txt -f examples/some_text.txt # 输出位于 output/some_text.txt/ ``` ### 3) 按内容分类 ``` ./prhook.sh -c -f examples/some_files/ -t templates/dates.txt #results in output/ ``` ## 文档 详情请参阅 [GUIDE.md](GUIDE.md)。 ## 许可证 MIT © [amn3zi4](https://github.com/amn3zi4)
标签:Bug Bounty, Cutter, Shell脚本, 占用监测, 可自定义解析器, 子域名排序, 应用安全, 文件分类, 文本处理, 无线安全, 网络安全, 资产管理, 递归处理, 隐私保护