文章目录

一、[强烈推荐]:使用vim查看、编辑二进制文件step1:使用vim打开二进制文件(vim -b xxx)step2:将内容转化为16进制step3:将当前文本转化回文本格式step4:保存退出

二、hexdump命令示例1:组合选项效果展示【-C -n 16 -s 0x10】示例2:单个选项效果展示

3、od命令【参数组合】【-A参数】【-t参数】【-j参数】

一、[强烈推荐]:使用vim查看、编辑二进制文件

vim打开二进制文件,在【底行模式】下输入如下命令查看二进制文件内容。

step1:使用vim打开二进制文件(vim -b xxx)

vim -b 文件

step2:将内容转化为16进制

想要修改二进制文件内容,需要将文件修改为16进制以后再进行修改。命令如下:

:%!xxd

备注:也可以指定每行显示的字节数,默认是每行显示16个字节。例如:每行显示12个字节【:%!xxd -c 12】

step3:将当前文本转化回文本格式

:%!xxd -r

注意:修改完文件内容以后,一定要将文件内容转回文本格式,否则二进制文件可能无法使用。不过就算忘记转化回文本格式就保存退出了,再进来重新转化一次也可以。

step4:保存退出

:wq

二、hexdump命令

hexdump [选项] [文件]

==============================================================

其中,选项可以如下:

选项释义:

常用:

-C 输出规范的十六进制和ASCII码。

-n length 只格式化输出length个字节。

-s addr 从偏移量开始输出。

不常用:

-b 单字节八进制显示。

-c 单字节字符显示。

-d 双字节十进制显示。

-o 双字节八进制显示。

-x 双字节十六进制显示。

-e 指定格式字符串,格式字符串包含在一对单引号中,格式字符串形如:'a/b "format1" "format2"'。

示例1:组合选项效果展示【-C -n 16 -s 0x10】

-n 16 :只显示16个字节

-s 0x10 :从0x10地址开始打印

$ hexdump -C -n 16 -s 0x10 od_cmd_test.txt

00000010 42 43 44 45 0a 31 32 33 34 35 36 37 38 39 30 61 |BCDE.1234567890a|

00000020

$ hexdump -C od_cmd_test.txt

00000000 31 32 33 34 35 36 37 38 39 30 61 62 63 64 65 41 |1234567890abcdeA|

00000010 42 43 44 45 0a 31 32 33 34 35 36 37 38 39 30 61 |BCDE.1234567890a|

00000020 62 63 64 65 41 42 43 44 45 0a 31 32 33 34 35 36 |bcdeABCDE.123456|

00000030 37 38 39 30 61 62 63 64 65 41 42 43 44 45 0a |7890abcdeABCDE.|

0000003f

示例2:单个选项效果展示

$ hexdump -C od_cmd_test.txt

00000000 31 32 33 34 35 36 37 38 39 30 61 62 63 64 65 41 |1234567890abcdeA|

00000010 42 43 44 45 0a 31 32 33 34 35 36 37 38 39 30 61 |BCDE.1234567890a|

00000020 62 63 64 65 41 42 43 44 45 0a 31 32 33 34 35 36 |bcdeABCDE.123456|

00000030 37 38 39 30 61 62 63 64 65 41 42 43 44 45 0a |7890abcdeABCDE.|

0000003f

$ hexdump -c od_cmd_test.txt

0000000 1 2 3 4 5 6 7 8 9 0 a b c d e A

0000010 B C D E \n 1 2 3 4 5 6 7 8 9 0 a

0000020 b c d e A B C D E \n 1 2 3 4 5 6

0000030 7 8 9 0 a b c d e A B C D E \n

000003f

$ hexdump -x od_cmd_test.txt

0000000 3231 3433 3635 3837 3039 6261 6463 4165

0000010 4342 4544 310a 3332 3534 3736 3938 6130

0000020 6362 6564 4241 4443 0a45 3231 3433 3635

0000030 3837 3039 6261 6463 4165 4342 4544 000a

000003f

$ hexdump -s 0x8 od_cmd_test.txt

0000008 3039 6261 6463 4165 4342 4544 310a 3332

0000018 3534 3736 3938 6130 6362 6564 4241 4443

0000028 0a45 3231 3433 3635 3837 3039 6261 6463

0000038 4165 4342 4544 000a

000003f

3、od命令

Linux命令行下可以使用od命令查看文件内容。

od命令可以使用上述hexdump命令替代,而且hexdump命令更为强大、灵活。

命令格式如下:

od [选项] [文件]

==============================================================

其中,选项可以如下:(备注:【选项可以组合】,为了便于观看将选项竖着写)

选项释义: 释义:

-abcdfhilovx

-t <输出格式acodx> #显示格式,如:-tcx1

-A <每行偏移量显示进制> #od显示第一列数字含义为:每行字符个数,默认16进制显示,每行16个字符,可以改为d:10进制递增

-w <每列字符数> #设置每行显示的数字个数,会影响第一列(偏移量)的值

-j <字符数目> #跳过指定字节数,等价于--skip-bytes=字节数

-N <字符数目> #一直显示到设置的字符数目为止

--endian={big|little} #指定大小端方式

==============================================================

-t 附加参数含义解释:(如:-tcx2等)

a #默认字符输出,忽略高位

c #使用ascii字符输出

o[size] #八进制,每个数字表示size个字节

d[size] #十进制,每个数字表示size个字节

x[size] #十六进制,每个数字表示size个字节,如x1,每个数字显示为1个字节

【参数组合】

$ od -Ad -tcx1 -w8 -j16 od_cmd_test.txt

0000016 B C D E \n 1 2 3

42 43 44 45 0a 31 32 33

0000024 4 5 6 7 8 9 0 a

34 35 36 37 38 39 30 61

0000032 b c d e A B C D

62 63 64 65 41 42 43 44

0000040 E \n 1 2 3 4 5 6

45 0a 31 32 33 34 35 36

0000048 7 8 9 0 a b c d

37 38 39 30 61 62 63 64

0000056 e A B C D E \n

65 41 42 43 44 45 0a

0000063

【-A参数】

注意观察第一列数据递增方式,(默认十六进制递增)

每行偏移个数(偏移量):十六进制递增:

$ od -A x od_cmd_test.txt

000000 031061 032063 033065 034067 030071 061141 062143 040545

000010 041502 042504 030412 031462 032464 033466 034470 060460

000020 061542 062544 041101 042103 005105 031061 032063 033065

000030 034067 030071 061141 062143 040545 041502 042504 000012

00003f

每行偏移个数(偏移量):十进制递增:

$ od -A d od_cmd_test.txt

0000000 031061 032063 033065 034067 030071 061141 062143 040545

0000016 041502 042504 030412 031462 032464 033466 034470 060460

0000032 061542 062544 041101 042103 005105 031061 032063 033065

0000048 034067 030071 061141 062143 040545 041502 042504 000012

0000063

【-t参数】

$ od -tcx1 od_cmd_test.txt

0000000 1 2 3 4 5 6 7 8 9 0 a b c d e A

31 32 33 34 35 36 37 38 39 30 61 62 63 64 65 41

0000020 B C D E \n

42 43 44 45 0a

0000025

【-j参数】

$ od -j 16 od_cmd_test.txt

0000020 041502 042504 030412 031462 032464 033466 034470 060460

0000040 061542 062544 041101 042103 005105 031061 032063 033065

0000060 034067 030071 061141 062143 040545 041502 042504 000012

0000077

Copyright © 2088 VR世界杯_世界杯举办 - weiqer.com All Rights Reserved.
友情链接