首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得与十六进制格式相同的Hexdump输出?

如何获得与十六进制格式相同的Hexdump输出?
EN

Unix & Linux用户
提问于 2018-10-17 17:35:48
回答 2查看 10.1K关注 0票数 6

我正在尝试使我的十六进制命令的输出看起来类似于十六进制默认设置。我一直在使用-e处理格式字符串,但是由于没有很好的文档,可以直观地描述如何使用它,所以我无法正确地处理它。

目前,我有:

代码语言:javascript
复制
# hexdump -C -n 0x100 m1.bin
00000090  00 00 00 00 00 56 08 00  00 00 00 00 04 00 00 00  |.....V..........|
000000a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

但是我希望它有一个分隔这4个字节的空间,如下所示:

代码语言:javascript
复制
00000090  00 00 00 00  00 56 08 00  00 00 00 00  04 00 00 00  |.....V..........|
000000a0  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  |................|

另一种选择是:

代码语言:javascript
复制
00000090  0000 0000  0056 0800  0000 0000  0400 0000  |.....V..........|
000000a0  0000 0000  0000 0000  0000 0000  0000 0000  |................|

而且,如果有可能得到一些颜色,那将是真的很棒。到目前为止,我还没有得到任何颜色从六转储。

编辑

对于管道来说,还可以省略地址、char字段和新行(\n),其中包括:

代码语言:javascript
复制
# hexdump -e '16/1 "%04.2x"' -n 40 m1.bin
  54  4f  43  00  00  00  00  00  00  00  00  00  00  00  00 ...
EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2018-10-17 22:18:00

没有那么简单也不明显..。试一试

代码语言:javascript
复制
 hexdump -v  -e '"%08.8_ax  "' -e' 4/1 "%02x " "  " 4/1 "%02x " "  "  4/1 "%02x " "  " 4/1 "%02x "  ' -e '" |" 16/1 "%_p" "|\n"' file
票数 4
EN

Unix & Linux用户

发布于 2018-10-17 18:59:03

我建议不要使用十六进制转储,而是像这样使用xxd:

代码语言:javascript
复制
xxd <bin_name>
00000000: cffa edfe 0700 0001 0300 0080 0200 0000  ................
00000010: 1000 0000 d006 0000 8580 2100 0000 0000  ..........!.....
00000020: 1900 0000 4800 0000 5f5f 5041 4745 5a45  ....H...__PAGEZE
00000030: 524f 0000 0000 0000 0000 0000 0000 0000  RO..............
00000040: 0000 0000 0100 0000 0000 0000 0000 0000  ................

如果您希望|最后绕过ascii字母,请尝试如下:

代码语言:javascript
复制
xxd <bin_name> |  sed -r 's/(................)$/|\1|/g'
00000000: cffa edfe 0700 0001 0300 0080 0200 0000  |................|
00000010: 1000 0000 d006 0000 8580 2100 0000 0000  |..........!.....|
00000020: 1900 0000 4800 0000 5f5f 5041 4745 5a45  |....H...__PAGEZE|
00000030: 524f 0000 0000 0000 0000 0000 0000 0000  |RO..............|
00000040: 0000 0000 0100 0000 0000 0000 0000 0000  |................|
票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/476079

复制
相关文章

相似问题

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