天天看點

hexdump常用參數

在分析mysql binlog或者ibd檔案時候,常會用到hexdump 檢視實體檔案的存儲内容。

node1:~ # hexdump --help  (常用下面3個紅色标注的參數)

hexdump: invalid option -- '-'

Usage:

hexdump [options] file...

Options:

-b              one-byte octal display           8進制顯示

-c              one-byte character display       ASCII顯示

-C              canonical hex+ASCII display       十六進制+ASCII顯示

-d              two-byte decimal display        兩位元組計算,顯示為10進制方式

-o              two-byte octal display         兩位元組計算,顯示為8進制方式

-x              two-byte hexadecimal display    兩位元組計算,顯示為16進制方式

-e format       format string to be used for displaying data   格式化輸出

-f format_file  file that contains format strings

-n length       interpret only length bytes of input    輸出多少個bytes的字元長度的内容

-s offset       skip offset bytes from the beginning    輸出檔案的開始偏移量  【注意:偏移量從0開始的!】

-v              display without squeezing similar lines    

-V              output version information and exit

案例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

<code>cat</code> <code>&gt; </code><code>test</code><code>.txt &lt; EOF</code>

<code>AbCDEF</code>

<code>GHIJKL</code>

<code>123456</code>

<code>EOF</code>

<code>[root@node1 ~]$ hexdump -b </code><code>test</code><code>.txt</code>

<code>0000000 101 142 103 104 105 106 012 107 110 111 112 113 114 012 061 062</code>

<code>0000010 063 064 065 066 012</code>

<code>[root@node1 ~]$ hexdump -c </code><code>test</code><code>.txt   可以看到\n表示檔案中有換行(注意:linux下換行是\n  windows下換行是\r\n)</code>

<code>0000000   A   b   C   D   E   F  \n   G   H   I   J   K   L  \n   1   2</code>

<code>0000010   3   4   5   6  \n                                            </code>

<code>0000015</code>

<code>[root@node1 ~]$ hexdump -C </code><code>test</code><code>.txt</code>

<code>00000000  41 62 43 44 45 46 0a 47  48 49 4a 4b 4c 0a 31 32  |AbCDEF.GHIJKL.12|</code>

<code>00000010  33 34 35 36 0a                                    |3456.|</code>

<code>00000015</code>

<code>[root@node1 ~]$ hexdump -d </code><code>test</code><code>.txt</code>

<code>0000000   25153   17475   17989   18186   18760   19274   02636   12849</code>

<code>0000010   13363   13877   00010                                        </code>

<code>[root@node1 ~]$ hexdump -C -s 0 -n 3 </code><code>test</code><code>.txt</code>

<code>00000000  41 62 43                                          |AbC|</code>

<code>00000003</code>

<code>[root@node1 ~]$ hexdump -C -s 8  </code><code>test</code><code>.txt   從偏移量8開始輸出全部内容</code>

<code>00000008  48 49 4a 4b 4c 0a 31 32  33 34 35 36 0a           |HIJKL.123456.|</code>

本文轉自 lirulei90 51CTO部落格,原文連結:http://blog.51cto.com/lee90/1979067,如需轉載請自行聯系原作者