Ich versuche, zwei Bytes in der Binärdatei zu finden, dann den Wert dieser beiden Bytes zu erhöhen und sie in der Datei zu ersetzen. Diese beiden Bytes befinden sich an den Positionen 0x82-0x83. Im Moment habe ich diese beiden Bytes erfolgreich damit extrahiert:
#!/usr/bin/env bash
BYTES=$(tail -c +131 "$1" | head -c 2)
Diese Bytes haben den Wert : 1B 1F
. Ich stecke fest mit:
- Wie konvertiere ich Bytes in Ganzzahlen? Es sollte
6943
dezimal sein. - Anhängen / Echo von Binärdaten an eine Datei
- So schreiben Sie mehr Bytes in die Datei an den Positionen 0x82-0x83. Ich könnte es gebrauchen
head -c 130 original.bin >> new_file.bin && magic_command_writing_bytes_to_file >> new_file.bin && tail -c +133 original.bin
, aber es muss einen besseren Weg geben.
Ich könnte das in PHP machen, es sollte einfacher sein, aber ich bin interessiert, wie man das in Bash macht.