📜  Linux 中的 hexdump 命令及示例(1)

📅  最后修改于: 2023-12-03 14:43:56.622000             🧑  作者: Mango

Linux中的hexdump命令及示例

简介

hexdump是一个常用的命令行工具,它可以将文件以十六进制、八进制等格式输出。它还能够将非文本数据转换为可读的ASCII码。

命令格式

hexdump命令的基本格式如下:

hexdump [OPTIONS] [FILE]

其中,OPTIONS为可选参数,FILE为要转换的文件。如果FILE参数未指定,则默认从标准输入(即键盘输入)读取数据。

常用选项

以下是hexdump命令的几个常用选项:

  • -C--canonical:以可读的ASCII码输出十六进制码和对应的ASCII码。
  • -n--length:指定转换的字节数。
  • -s--skip:跳过文件头的指定字节数。
  • -v--verbose:输出更详细的信息。
示例
示例1:查看文件的十六进制码
hexdump -C file.txt

输出结果:

00000000  48 65 6c 6c 6f 20 57 6f  72 6c 64 21 0a           |Hello World!.|
0000000d

上面的输出结果中,左侧的数字表示偏移量,每行显示16个字节。

示例2:将十六进制码还原为原始文件
echo "48656c6c6f20576f726c64210a" | xxd -r -p > file.txt

该命令将十六进制码还原为原始文件,并将其保存到file.txt中。

示例3:跳过文件头并指定字节数
hexdump -C -s 10 -n 5 file.txt

输出结果:

0000000a  6f 20 57 6f 72                                    |o Wor|

上面的命令中,-s 10表示跳过文件头的10个字节,-n 5表示总共转换5个字节。