命令使用:Hexdump 二进制、十六进制查看器

命令使用:Hexdump 二进制、十六进制查看器


简介:hexdump命令是Linux下查看二进制文件的工具。但它的强大在于它的格式化输出。

默认的输出格式:

hexdump -n 100 u-boot-real.bin
0000000 0013 ea00 f014 e59f f014 e59f f014 e59f
0000010 f014 e59f f014 e59f f014 e59f f014 e59f
0000020 01c0 c7e0 0220 c7e0 0280 c7e0 02e0 c7e0


hexdump -n 100 -C u-boot-real.bin 

00000000  13 00 00 ea 14 f0 9f e5  14 f0 9f e5 14 f0 9f e5    |................|
00000010  14 f0 9f e5 14 f0 9f e5  14 f0 9f e5 14 f0 9f e5    |................|
00000020  c0 01 e0 c7 20 02 e0 c7  80 02 e0 c7 e0 02 e0 c7    |.... ...........|
00000030  40 03 e0 c7 a0 03 e0 c7  00 04 e0 c7 78 56 34 12    |@...........xV4.|

选项:

-n  length   只读取文件的前length个字节进行格式化输出。默认为十进制,单位字节。
-s  offset   开始偏移量,从文件顶部到offset个字节片开始读取文件。
-C             每一字节以16进制显示,每行共16个字节,尾部附加16个相应的ASCII字符。
-c             每一字节以ASCII字符显示,其余同“-b”参数。
-b             每一字节以8进制显示,每行共16字节,每行开始以16进制显示文件位置偏移量。
-d             双字节十进制显示,其余同“-b”参数。
-o             双字节8进制显示,其余同“-b”参数。
-v             去除中间显示的“*”字符。
-x             双字节16进制显示,其余同“-b”参数。

高级用法:

-e            指定格式字符串,同一行可跟多个-e选项。格式字符串包含在一对单引号中,每个格式字符串由三部分组成,每个由空格分隔,第一个形如"a/b", b表示对每b个输入字节应用格式“format_1”,a表示对每a*b个字节应用格式"format_2",一般a>b,且b只能为1,2,4,另外a可以省略此时x的值为1。
格式   ‘x/y "format_1" "format_2"’
格式字符串format_x类似于printf,部分支持的字符如下:
%d,%i,%o,%u,%X,%x    a或b的取值,默认为4字节,支持取值1,2,4
%E,%e,%f,%G,%g         a或b的取值,默认为8字节,支持取值4,12
%_c,%_p,%_u,%c               a或b的取值只能是1字节
%_a[dox]                                显示当前字节的下一字节在文件中的偏移量,[dox]可替换为d、o、x分加表示以10、8、16进制方式显示

示例:

格式化u-boot.bin与u-boot提供命令md显示一致
命令:hexdump -n 256 -e '1 "%08_ax: " ""' -e '4/4 "%08x ""   |"' -e '16/1 "%_p" "|\n"' u-boot-real.bin

00000000: ea000013 e59ff014 e59ff014 e59ff014   |................|
00000010: e59ff014 e59ff014 e59ff014 e59ff014   |................|
00000020: c7e001c0 c7e00220 c7e00280 c7e002e0   |.... ...........|
00000030: c7e00340 c7e003a0 c7e00400 12345678   |@...........xV4.|
00000040: c7e00000 57e00000 c7e00000 c7e38000   |.......W........|
00000050: c7e7d04c e10f0000 e3c0001f e38000d3   |L...............|
u-boot命令:md 0x57e00000
57e00000: ea000013 e59ff014 e59ff014 e59ff014    ................
57e00010: e59ff014 e59ff014 e59ff014 e59ff014    ................
57e00020: c7e001c0 c7e00220 c7e00280 c7e002e0    .... ...........
57e00030: c7e00340 c7e003a0 c7e00400 12345678    @...........xV4.
57e00040: c7e00000 57e00000 c7e00000 c7e38000    .......W........
57e00050: c7e7d04c e10f0000 e3c0001f e38000d3    L...............





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值