首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在目标目录中搜索二进制数据?

如何在目标目录中搜索二进制数据?
EN

Stack Overflow用户
提问于 2021-05-03 15:16:35
回答 3查看 262关注 0票数 1

我尝试了ag和其他搜索工具,他们只支持在二进制文件中搜索普通文本,而不支持在二进制文件中搜索二进制文本。

我在谷歌上搜索了“搜索二进制文本”,结果都提到了“二进制文件中的搜索文本”。

有任何工具支持像这样的search_tool -bin "313233"搜索吗?(实际上是搜索包含字符串“123”的文件)

EN

回答 3

Stack Overflow用户

发布于 2021-08-12 03:40:48

让我们构建自己的POSIX兼容工具:

search_tool:

代码语言:javascript
运行
复制
od -An -tx1 "$1" | tr -cd '[:xdigit:]' | grep -qF "$2"

这将以十六进制形式转储文件,删除非十六进制数字,并搜索结果。

代码语言:javascript
运行
复制
$ chmod +x search_tool
$ ./search_tool somefile 313233
$ echo $?
0

somefile包含123

您可以使用find(1)在任何目录中运行search_tool:

代码语言:javascript
运行
复制
$ find java_playground ! -type d -a -exec search_tool {} 313233 \; -print

search_tool必须是可从PATH定位的。

票数 1
EN

Stack Overflow用户

发布于 2021-08-18 14:53:07

在不了解您的需求的情况下,这应该足以满足大多数场景:

代码语言:javascript
运行
复制
grep -robUaP "{YOUR_BINARY_SEQUENCE_HERE_IN_HEX_FORMAT}" {DIRECTORY_TO_SEARCH}

示例:

代码语言:javascript
运行
复制
grep -robUaP "\x01\x02\x03" /bin

基于:Binary grep on Linux?

票数 1
EN

Stack Overflow用户

发布于 2021-08-19 11:54:23

我刚用歌朗写了一本,很简单,但很管用。

https://github.com/aj3423/bingrep

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67371449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档