当前位置: 首页 > news >正文

Linux命令-hexdump命令(查看文件的十六进制、八进制、十进制或 ASCII 格式的原始内容)

🧭 说明

hexdump是 Linux 系统中一个强大的命令行工具,用于查看文件的十六进制、八进制、十进制或 ASCII 格式的原始内容。它就像文件的“显微镜”,常用于调试程序、分析文件格式或检查二进制数据 。

下面这个表格汇总了hexdump的核心选项。

选项功能描述
-C经典模式。同时显示十六进制字节和对应的ASCII字符,最常用 。
-n length仅解析文件的前length个字节 。
-s offset跳过文件开头offset字节后再开始读取 。
-v显示所有输入数据,不压缩连续的重复行 。
-e format_string使用自定义格式字符串显示数据,实现高度灵活的输出 。
-x以双字节为单位用十六进制显示 。
-c单字节字符显示,非打印字符显示为八进制转义序列 。

💡 基本用法与示例

掌握以下几个典型用法,就能应对大部分场景。

  1. 查看二进制文件结构
    使用-C选项是最直观的方式。它会在一行中显示偏移量、16个字节的十六进制值以及对应的ASCII字符。

    hexdump -C filename.bin

    输出示例:

    00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............| 00000010 02 00 3e 00 01 00 00 00 a8 63 5d 00 00 00 00 00 |..>......c].....|

    从输出中可以清晰看到著名的 ELF 文件魔数7f 45 4c 46

  2. 检查文件头或特定片段
    结合-n-s选项,可以精准查看文件的某个部分。例如,查看文件前64字节(常用于检查文件头):

    hexdump -C -n64filename.bin

    跳过文件开头的512字节(例如分析跳过MBR的磁盘数据)后查看:

    hexdump -C -s512filename.bin
  3. 识别文本中的隐藏字符
    当怀疑文本文件包含不可见的控制字符(如换行符、制表符)时,-c选项可以将其显示为八进制转义序列,便于诊断。

    hexdump -c script.txt

🛠️ 高级自定义格式

-e选项是hexdump最强大的功能,允许完全自定义输出格式。其格式字符串的基本单元为"迭代次数/字节数 格式模板"

示例1:模拟-C选项的输出效果

hexdump -e'"%08_ax " 8/1 "%02x " " " 8/1 "%02x " " |" 16/1 "%_p" "|\n"'filename.bin
  • %08_ax:以8位十六进制数字显示当前偏移量。
  • 8/1 "%02x ":以十六进制格式依次处理8个字节,每个字节占两位。
  • 16/1 "%_p":处理16个字节,可打印字符原样输出,不可打印字符显示为点号 。

示例2:每行只显示4个双字节的十进制数

hexdump -e'4/2 "%6d " "\n"'filename.bin

⚠️ 实用技巧与注意事项

  • 处理大文件:直接使用hexdump分析超大文件可能导致终端卡顿。建议先使用dd命令截取感兴趣的部分,再通过管道传递给hexdump
    ddif=huge_file.binbs=1Mcount=1|hexdump -C
  • 显示完整输出:默认情况下,hexdump会合并压缩连续的重复行,用单个星号*表示。使用-v选项可以强制显示所有行 。
  • 从标准输入读取:当文件名参数为-时,hexdump会从标准输入读取数据 。
    echo"Hello"|hexdump -C
  • 工具对比xxd是另一个常用的十六进制转储工具,它的默认输出格式与hexdump -C类似,并且支持将十六进制输出反向转换回二进制文件,在某些场景下可能更方便 。

💎 总结

hexdump是深入分析文件内容的利器。对于日常快速查看,hexdump -Cxxd是不错的选择。而当需要精确控制输出格式以满足特定分析需求时,hexdump -e的强大功能无可替代 。

http://www.jsqmd.com/news/123543/

相关文章:

  • 探索生命:哪一刻,动物的行为让你感到震惊?
  • 2025年入职/转行网络安全,该如何规划?_网络安全职业规划
  • 怎样选择品牌代工厂?不要只关注价格,这5点才是关键
  • AI内容生成革命来了,你还在手动写文案?
  • Open-AutoGLM医疗协同实战:5大关键技术赋能数字人诊疗全流程
  • 项目中实际如何运用性能监控
  • 你不知道的Open-AutoGLM黑科技(5个隐藏功能让城市管理效率提升300%)
  • 2025年上海居民搬家公司联系方式汇总: 本地资深企业官方联系渠道与一站式搬迁服务指引 - 品牌推荐
  • AbMole小课堂:类器官培养中决定成败的抑制剂、细胞因子
  • 从Attention到Transformer:大模型核心技术详解与实践_【2025年AI大模型岗面试面经】
  • 2025年广州居民搬家公司联系方式汇总: 深耕本地十余年专业团队服务与一站式无忧搬家方案 - 品牌推荐
  • 2025年北京居民搬家公司联系方式汇总: 精选资深企业官方联系方式与一站式搬迁指南 - 品牌推荐
  • 数字孪生联动失控频发?Open-AutoGLM给出的4种高可用解决方案
  • 项目全过程管理系统工具盘点:9款覆盖立项到验收的全流程管理方案
  • 聚是鸿蒙气,散是满天星!《鸿蒙星光盛典》展示中国科技自立自强之路
  • (Open-AutoGLM实测报告)城市复杂路况下交互响应速度提升3.8倍
  • 【Open-AutoGLM教育革命】:虚拟教师如何重塑未来课堂?
  • Vue基础入门08,详解 Vue watch 侦听器:基础用法、深度监听与立即执行场景
  • 怎么搜索研究性论文:实用方法与高效技巧指南
  • 2024学习计划:提示工程架构师如何掌握Agentic AI,前景与挑战
  • MonkeyCode:2025年最值得拥有的企业级AI编程助手,注册即送200元算力大礼包!
  • 手把手教你将Open-AutoGLM移植到农业传感节点(附完整配置清单)
  • 2025年上海小型搬家公司联系方式汇总: 本地资深企业官方联系方式与一站式搬迁指南 - 品牌推荐
  • 2025年广州居民搬家公司联系方式汇总:精选资深企业官方联系渠道与一站式搬迁指南 - 品牌推荐
  • 从交通到应急,Open-AutoGLM如何打通城市“神经中枢”?:6大应用场景全面曝光
  • Vue基础入门09,Vue中v-if与v-show的核心差异:渲染机制与使用场景选择
  • 网络安全零基础入门终极指南:非常详细的进阶路径,别在收藏夹吃灰!
  • 【AI进化的下一个拐点】:Open-AutoGLM如何重塑自主学习技术边界?
  • 可视化软件 jsxgraph 探索 | 技术储备
  • 2025年批发悬浮门优质厂家源头厂家权威推荐榜单:不锈钢悬浮门/伸缩旗杆/手动旗杆源头厂家精选 - 品牌推荐官