xxd — 十六進位轉儲工具

以十六進位格式顯示二進位檔案的內容,或將十六進位轉回二進位。

語法

xxd [選項] [檔案]

常用選項

選項 說明 範例
-l N 只顯示前 N 個位元組 xxd -l 64 file
-s N 從偏移 N 開始顯示 xxd -s 0x100 file
-c N 每行顯示 N 個位元組(預設 16) xxd -c 8 file
-g N 每 N 個位元組一組(預設 2) xxd -g 1 file
-r 反向:從 hex dump 還原二進位 xxd -r file.hex > file.bin
-p 只輸出純十六進位(無偏移和 ASCII) xxd -p file
-i 以 C 陣列格式輸出(可直接嵌入 C 程式碼) xxd -i file.bin

使用範例

範例 1:查看二進位檔案的前 64 位元組

顯示偏移位址、十六進位值和 ASCII 表示。

$ xxd -l 64 /usr/bin/ls
00000000: 7f45 4c46 0201 0100 0000 0000 0000 0000  .ELF............
00000010: 0300 3e00 0100 0000 c052 4600 0000 0000  ..>......Rf.....
...
範例 2:檢查檔案的魔術位元組

查看檔案開頭幾個位元組,識別檔案格式(PNG=89 50 4E 47,JPEG=FF D8 FF)。

$ xxd -l 8 image.png
00000000: 8950 4e47 0d0a 1a0a                      .PNG....
範例 3:純十六進位輸出(管線處理用)

只輸出十六進位字元,方便在管線中進行比較或傳輸。

$ xxd -p /etc/hostname
6d792d7365727665720a

延伸閱讀