You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用xxd命令输出无分隔符的纯十六进制字节内容

xxd逐字节输出无空格无换行十六进制的实现方法

可以实现该需求,仅调整columns参数无法达到目标,需要组合xxd的纯十六进制输出参数和文本清理命令使用。

实现命令

分两种适用场景:

  • 处理本地文件/一次性输入
    命令:xxd -p 输入源 | tr -d '\n '
    示例:测试输入字符串abc时,执行echo -n "abc" | xxd -p | tr -d '\n ',输出结果为616263,完全不含空格、换行,末尾也无多余换行。
  • 处理实时流式输入(实现逐字节读取、逐字节输出)
    命令:stdbuf -i0 -o0 xxd -p | stdbuf -o0 tr -d '\n '
    该命令关闭了输入输出缓冲,上游管道每传入1个字节,就会实时输出对应的2个十六进制字符,无任何多余格式。

参数说明

  • -p:xxd的纯十六进制输出模式,输出内容默认不带偏移量、ASCII对照列、字节间空格,仅保留十六进制字符和自动插入的换行符
  • tr -d '\n ':删除输出中所有的换行符和空格,解决xxd默认每30字节插入1个换行的问题
  • stdbuf -i0 -o0:关闭命令的输入、输出缓冲,满足实时逐字节处理的需求

单独调整columns参数无效的原因

仅设置-c(columns)参数无法达到目标:如果把-c设为极大值,只要输入总长度超过设置的列数,xxd还是会自动插入换行;如果把-c设为1逐行输出单字节的十六进制,反而会产生大量换行,必须搭配文本清理命令使用。

内容的提问来源于stack exchange,提问作者William Entriken

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 04:54:01