根据位置替换文件中的字符

根据位置替换文件中的字符

我致力于文件的编码,从unknown-8bitUTF-8.但我收到一条错误消息。

iconv: illegal input sequence at position 136828

所以我在文件中进行了搜索,位置如下:

cat file | dd bs=1 skip=136828 count=1 2>/dev/null

我找到了造成问题的角色。

现在我想用 替换这个字符?

有人能帮我吗?

答案1

要将偏移量 136828 处的字节替换为?,您可以执行以下操作:

printf '?' | dd bs=1 seek=136828 conv=notrunc of=thefile

相关内容