Linux SED 用 1A 替换 0A

问题描述

我正在使用汽车收音机。这里的操作系统是 QNX,命令集非常有限:

enter image description here

我需要修改十六进制文件。我找到了 sed 命令,它可以做到,但是当我尝试使用它时,我卡住了。

我需要替换这个字节顺序: 8A 00 00 0A B8 90 4B 到 -> 8A 00 00 1A B8 90 4B 我没有运气。我在 stackoverflow 上发现了一些代码,比如 sed ':a;N;$!ba;s/\n//g' file 删除了 0A,所以也许可以删除并附加 1A。有机会吗?提前致谢。

解决方法

你已经非常接近了。使用 GNU sed:

sed ':a;N;$!ba;s/\n/\x1A/g' file

sed ':a;N;$!ba;s/\x0a/\x1A/g' file