5

Я хотел бы разбить двоичный файл на более мелкие файлы на основе шаблона «xÚ» (это 78 DA в шестнадцатеричном формате), поэтому, когда в файле есть «xÚ», сценарий сплиттера разделяет и вставляет содержимое в новый файл до другого ». xÚ 'можно найти. Вновь созданные файлы должны начинаться с «xÚ».

FreeBSD awk , grep , sh предпочтительнее.

1 ответ1

2

РЕДАКТИРОВАТЬ:

Хорошо, вот очистка этого беспорядка:

awk 'BEGIN { RS=""; FS=/\x78\xda/ } { for (i = 1; i <= NF; i++) print $i > i }' YOUR_BIN_FILE

Пустой RS все еще может вызывать неожиданные результаты, поскольку он создает отдельные записи в пустых строках. На самом деле трудно разделить файл на записи. Один из способов решить эту проблему - установить разделитель записей на некоторый шаблон, которого нет в файле. Другой способ - разделить записи на 78da и обработать каждую запись.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .