используя bash: записать битовое представление целого числа в файл

У меня есть файл с двоичными данными, и мне нужно заменить несколько байтов в определенной позиции. Я придумал следующее, чтобы направить bash в смещение и показать, что он нашел место, которое я хочу:

dd bs=1 if=file iseek=24 conv=block cbs=2 | hexdump

Теперь, чтобы использовать «файл» в качестве вывода:

echo anInteger | dd bs=1 of=hextest.txt oseek=24 conv=block cbs=2

Кажется, это работает просто отлично, я могу просмотреть изменения, внесенные в шестнадцатеричном редакторе. Проблема в том, что «anInteger» будет записан как ASCII-представление этого целого числа (что имеет смысл), но мне нужно написать двоичное представление.

Я хочу использовать bash для этого, и скрипт должен работать на как можно большем количестве систем (я не знаю, будет ли на целевой системе установлен python или какой-либо другой).

Как мне сказать команде преобразовать ввод в двоичный файл (возможно, из шестнадцатеричного числа)?

Ответы на вопрос(9)

Ваш ответ на вопрос