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

如何以十六进制查看文件/终端ANSI转义码并禁用其解析

解决ANSI代码解析与查看问题

一、完整打印包含ANSI代码的字符串

要让终端输出原始的ANSI转义序列而非解析后的彩色文本,有几种实用方法:

  • 使用cat的可视化参数:
    执行 cat -v testfile,会将不可打印的ESC字符转换为^[,输出显示为 ^[[34;20mtest^[[0m,直观看到转义结构。

  • 用sed替换转义字符:
    执行 sed 's/\x1b/\\x1b/g' testfile,把文件中实际的ESC字节替换成字符串\x1b,直接输出你想要的 \x1b[34;20mtest\x1b[0m。

  • 借助printf的转义输出:
    执行 printf '%q\n' "$(cat testfile)",%q会自动将特殊字符转义为Shell可识别的格式,输出结果就是带\x1b的完整序列。

二、以十六进制格式查看ANSI转义码

要查看文件中ANSI转义码的十六进制表示,常用以下工具:

  • xxd命令:
    执行 xxd testfile,会同时输出十六进制字节和对应的ASCII字符,ESC字符对应的十六进制是1b,你会看到类似:

    00000000: 1b5b 3334 3b32 306d 7465 7374 1b5b 306d  .[34;20mtest.[0m
    
  • hexdump命令:
    执行 hexdump -C testfile,输出更规整的十六进制与ASCII对照,清晰展示每个字节:

    00000000  1b 5b 33 34 3b 32 30 6d  74 65 73 74 1b 5b 30 6d  |.[34;20mtest.[0m|
    00000010
    
  • od命令:
    执行 od -t x1 testfile,仅输出十六进制字节序列,适合只关注原始字节的场景:

    0000000 1b 5b 33 34 3b 32 30 6d 74 65 73 74 1b 5b 30 6d
    0000020
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 18:42:14