从Bash文件进行十六进制编辑

时间:2014-08-22 08:46:12

标签: bash

我需要知道如何从bash文件进行十六进制编辑。例如,

hedit 0x0 A

这会将A写入偏移量0x0

1 个答案:

答案 0 :(得分:1)

您应该可以使用dd覆盖文件的某些部分,如下所示:

printf '\x0a' | dd of=filetopatch bs=1 seek=0 count=1 conv=notrunc 

参数的含义是:

  • of=filetopatch:要修补的文件(输出文件)
  • bs=1:一次更改1个字节
  • seek=0:在写
  • 之前移动到偏移0(十进制)
  • count=1:仅复制1个输入块
  • conv=notrunc:不要在编辑
  • 后截断输出