你在使用 history -h 并将其通过管道传输给 code(VS Code)时看到的这些奇怪字符(如 NNAAMMEE),其实是旧式 Unix 文档用来实现加粗或下划线的“退格键(Backspace)打印技巧”。
具体原理是:字符 + 退格 + 字符(例如 N + \b + N),老式打印机重叠打印两次就显得更黑(加粗)了。
以下是几种去除这些字符的有效方法:
- 使用 col -b (最推荐) 这是处理这类转义字符的标准工具。-b 参数专门用于过滤掉退格符及其前后的重复字符。
history -h | col -b | code -