Исправление двоичного файла с помощью dd

Я даю вам несколько подсказок. Думаю, это решит вашу проблему.

Тогда попробуйте отправить почту.

32
17.03.2017, 12:46
1 ответ

Да, двоичные файлы можно исправлять с помощью dd.

Чтобы исправить файл с данными из стандартного ввода:

dd of=file.bin bs=1 count=2 conv=notrunc

Затем введите (текст )данные для исправления. Вышеприведенное исправляет только 2 байта (от начала файла ), даже если в запросе введено более 2 символов.
Чтобы исправить середину файла, укажите позицию (адрес )данных файла через seek, чтобы начать исправление. например.

dd of=file.out bs=1 count=2 seek=2 conv=notrunc

или

echo "<address: data>" | xxd -r - file.out

При исправлении непечатаемых символов -создайте двоичный временный файл с данными для исправления. например.

dd if=file.in of=file.out bs=1 count=2 seek=2 conv=notrunc

или

xxd -r hexoffsets.in file.out

или укажите шестнадцатеричные данные со смещением на стандартном вводе

echo "<address: hex-data>" | xxd -r - file.out

Определение:
Патч означает преобразование шестнадцатеричного дампа в двоичный (из man-страницы xxd)

Протестировано на Ubuntu 16.04.7

1
29.01.2021, 04:53

Теги

Похожие вопросы