有没有一种简单的方法可以在命令行中修改二进制文件?假设我知道我的二进制文件包含1234ABCD,我想将它更改为12FFABCD或FFFFABCD,甚至可能是FF34FFABC0(你明白我的意思):)如何在不使用任何特殊工具(如Swiss File Knife或类似工具)的情况下实现这一点?最好能够只使用标准Linux工具从命令行执行。或者,直接在偏移量0x10000处写入FF,在偏移量0x100001处写入12等,而不是搜索要替换的十六进制字符串。它应该可编写脚本,并直接从命令行运行。我正在寻找像“包含在发行版中的二进制文件--write AB --at-offset 100000 --file thebinary.bin”这样的东西。我相当确定可以使用dd完成,但我无法理解man page。
echo "char* x = \"xxx\";" | gcc -xc - -c -std=c11 -pedantic -Wall -Wextra
中,如何将xxx
修补为x<null>x
? - pmor