linux xxd命令(查看文件内容、查看文件信息)(将文件或标准输入转换为hex(十六进制)和ASCII(美国信息交换标准代码)表示,或者从hex dump(十六进制转储)反向到二进制) |
您所在的位置:网站首页 › 网盘如何输入提取码查看文件信息内容 › linux xxd命令(查看文件内容、查看文件信息)(将文件或标准输入转换为hex(十六进制)和ASCII(美国信息交换标准代码)表示,或者从hex dump(十六进制转储)反向到二进制) |
文章目录
Linux xxd命令安装xxd基本使用方法创建hex dump从hex dump恢复到二进制
命令选项疑难技术点解析在脚本中使用xxd从hex dump恢复数据
其他应用查看视频文件信息
总结
Linux xxd命令
xxd是一个在Linux和UNIX系统中常用的工具,主要用于将文件或标准输入转换为hex(十六进制)和ASCII(美国信息交换标准代码)表示。该命令同时也提供了从hex dump(十六进制转储)反向到二进制的功能。 安装xxd通常情况下,xxd命令默认已经包含在大多数Linux发行版中。如果操作系统中没有这个命令,可以通过以下命令进行安装: sudo apt-get install vim-common或者 yum install vim-common这两个命令分别适用于基于Debian和基于Red Hat的Linux发行版。 基本使用方法 创建hex dumpxxd命令最常见的用法是创建一个文件的hex dump。例如,可以使用以下命令来查看文件"example.txt"的hex dump: xxd example.txt这会将文件的内容转化为十六进制,并显示每一行的偏移量(offset)。 从hex dump恢复到二进制xxd命令还有一个很重要的功能就是可以从hex dump恢复到二进制。只需要使用-r选项,例如: xxd -r example.txt.hex > example.txt其中,example.txt.hex是由xxd命令生成的hex dump文件,example.txt则是恢复出的二进制文件。 示例: root@ubuntu:/userdata/20231130_ffmpegTest/test20231210# root@ubuntu:/userdata/20231130_ffmpegTest/test20231210# cat example.txt.hex 00000000: e5a5 bde6 97a5 e5ad 90e8 bf98 e59c a8e5 00000010: 908e e5a4 b4e5 91a2 efbc 810a root@ubuntu:/userdata/20231130_ffmpegTest/test20231210# root@ubuntu:/userdata/20231130_ffmpegTest/test20231210# xxd -r example.txt.hex 好日子还在后头呢! root@ubuntu:/userdata/20231130_ffmpegTest/test20231210# 命令选项以下是xxd命令常用的一些选项: -p 或 --ps:将输出结果以连续hexdump的方式显示,不会显示偏移量或原始的字符数据。-r 或 --revert:从hex dump反向到二进制。-s 或 --seek :从指定的偏移量开始进行操作。-l 或 --len :只处理指定长度的输入数据。-c 或 --cols :设置每行显示的列数。例如,要查看一个二进制文件中从第100个字节开始的16个字节的hex dump,可以使用如下命令: xxd -s 100 -l 16 binaryfile在这里,-s 100告诉xxd从第100个字节开始,-l 16表示只查看16个字节。 示例: 疑难技术点解析 在脚本中使用xxdxxd命令通常在shell脚本中使用,作为数据处理的一部分。例如,在分析网络协议或文件格式时,可以用xxd来转换和查看二进制数据。 这种情况下,通常会将xxd的输出重定向到一个文件,或者通过管道传递给其他命令进行进一步处理。例如,以下命令会创建一个hex dump,并使用grep命令查找包含"abcdef"的行: xxd binaryfile | grep 'abcdef'示例: 从hex dump恢复数据虽然xxd -r可以从hex dump恢复到二进制,但这要求输入的格式必须是xxd能够识别的。如果hex dump的格式与xxd的输出格式不同,可能需要先进行转换。 例如,如果hex dump是连续的,没有偏移量或原始的字符数据,可以使用xxd -r -p来恢复。在这里,-p选项告诉xxd忽略任何非hex字符。 echo '48656c6c6f' | xxd -r -p上面的命令将输出"Hello",因为"48656c6c6f"是"Hello"在ASCII中的十六进制表示。 其他应用 查看视频文件信息 xxd -l 100 groundhog_h264.mp4 总结xxd是一个功能强大的工具,对于处理和分析二进制数据来说非常有用。尽管它的用法看起来可能有些复杂,但只需要理解了基本的操作和选项,就能够灵活地应对各种情况。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |