寻找Hex Viewer

时间:2011-06-20 16:22:17

标签: search vim binary hex

  

可能重复:
  Searching a log file

我可以输入二进制文件或我拥有的文本文件,并搜索多个十六进制值的模式。

在我的文本文件中查看了什么:

0x000001A0:36 5B 09 76 99 31 55 09 78 99 34 51 49 BF E0 03

0x000001B0:28 0B 0A 03 0B E0 07 28 0B 0A 03 0B 49 58 09 35

例如:我希望能够找到模式'49 BF E0 03 28 0B 0A',它跨越上面的第1行和第2行,但由于0x000001B0,我不能只定期搜索它:行的开头

以上是文本文件中的内容。

问题是,如果它是二进制文件我不知道我在文件中的位置,就好像我在文本文件中一样,我知道我在哪个位置(这是必要的)。

需要自由。

2 个答案:

答案 0 :(得分:4)

你不需要使用emacs,因为vim可以为你做(我说这是因为你标记了这个,而不是开始一场火焰战争。)

要在vim中执行此操作,请在vim中打开二进制文件并键入以下内容:

:%!xxd

这将过滤文件并转换为十六进制模式。所以当你打开时看起来像这样:

Êþº¾^@^@^@^B^@^@^@^R^@^@^@^@^@^@^P^@^@^@L0^@^@^@^L^@^@^@^G^@^@^@^C^@^@`^@^@^@
^@^@^L^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@

将显示为

0000000: cafe babe 0000 0002 0000 0012 0000 0000  ................
0000010: 0000 1000 0000 4c30 0000 000c 0000 0007  ......L0........
0000020: 0000 0003 0000 6000 0000 494c 0000 000c  ......`...IL....

运行该命令时。要在完成编辑后转换回二进制形式,请键入:

:%!xxd -r

答案 1 :(得分:0)

我诚实地推荐Emacs:你可以打开文件,然后去 Meta-X hexl-mode ,并有一个漂亮的十六进制模式视图。