Команда: hexdump
Создание шестнадцатеричного дампа ASCII из двоичных или текстовых файлов
sfk hexdump [options] dir .ext1 .ext2 .ext3
sfk ... +hexfile Создать удобочитаемый шестнадцатеричный дамп двоичных данных.
ПАРАМЕТРЫ
-showle - подсвечивает конечные символы строки CR и LF.
Это значение по умолчанию для чисто текстовых данных. Вы также можете добавить "le" к имени команды
-nole - не выделять символы конца строки
-wide - дамп 32 входных байта на строку
-lean - дамп 16 входных байт на строку
-post - уменьшенный формат, например, для сообщений на форуме
-min - минимальный формат с алфавитно-цифровым текстом
-nofile - или -nofilenames не перечисляет имена файлов
-rawname - выводит имя файла без префикса :file
-pure - выводит список постых шестнадцатеричных символов:
53464B2D544553540D0A
-hexsrc - выводит список шестнадцатеричных значений, разделенных запятыми:
0x53,0x46,0x4B,0x2D,0x54,0x45,0x53,0x54,0x0D,0x0A,
-decsrc - выводит список десятичных значений, разделенных запятыми:
83,70,75,45,84,69,83,84,13,10,
-nolf - не добавлять переводы строк с параметрами -pure, -hex/decsrc
-raw - то же самое, что и -nofile -pure -nolf
-off[set] n1 - дамп от смещения n1 до конца файла
n1 может быть отрицательным, например -off=-100 - выгружает последние 100 байт файла
-last n1 - то же, что и -offset -n1
-offlen n1 n2 - дамп от смещения n1 всего на n2 байта
-notrail - нет завершающей запятой "," в конце hex/dec источника
-norectrail - нет запятой в конце каждой записи источника
-recsize n - только с -hex/dec src, -pure или -flat:
Изменение количества входных байтов, выгружаемых для каждой записи.
При использовании формата вывода по умолчанию используйте -wide
-maxdump=n - дамп только первых n байт входных данных
-flat - без шестнадцатеричного дампа, выводить символы по мере их появления
Поддержка цепочки команд
Начиная с SFK 1.8.4 +hexdump использует текстовые или двоичные входные данные
из предыдущих команд, но без списков имен файлов:
sfk xed in.dat +hexdump - выгружает данные цепочки, созданные XED
sfk select mydir +hexdump - выгружает символы имен файлов, но не содержимое файла
+hexfile использовать для чтения содержимого файла вместо
sfk select mydir .dat +hexfile выгружает содержимое файлов, выбранных командой.
Используется для чтения содержимого файлов.
ПСЕВДОНИМЫ
sfk fhexdump - то же, что и hexfile
sfk hexdumpb - то же самое, что и "sfk hexdump -nole" для двоичного кода
sfk hexdumple - то же самое, что и "sfk hexdump -showle" для текста
sfk postdump - то же, что и "sfk hexdump -post" для форумов
СМОТРИТЕ ТАКЖЕ
sfk hextobin - Преобразование шестнадцатеричного дампа обратно в исходные данные.
ПРИМЕРЫ
sfk hexdump in.dat Дамп содержимого in.dat
sfk hexdumple mydir .txt Выгрузить содержимое всех файлов .txt в mydir
с подсветкой окончаний строк (CR)LF
sfk sel mydir .txt +hexfilele -maxdump=128 аналогично вышеописанному: сначала выбираются файлы,
а затем выгружаются только первые 128 байт на файл.
sfk hexdump -offlen 4221566976 96 part1.avi Выгружает 96 байт из смещения 4221566976 в Part1.avi
sfk hexdump -offlen 0xFBA00000 0x60 part1.avi То же, что и выше, но с использованием шестнадцатеричных чисел
sfk echo foo +atow +hexdump -pure -off 2 преобразовать строку в широкие символы UCS2,
а затем выгрузить ее без 2-байтового заголовка спецификации
sfk postdump test.dat +toclip Поместите содержимое test.dat в буфер обмена для публикации
sfk hexdump in.dat +view Показать HexDump в текстовом браузере Depeche View.
Работает с файлами размером до 4 МБ с помощью DVIEW Lite.
sfk hexdump -pure -recsize=500 in.dat Создайте шестнадцатеричный дамп с 500 байтами на запись
sfk hexfind in.dat -bin "/a1a2a3a4/" Поиск последовательности байтов 0xa1a2a3a4 в файле in.dat
sfk xhexfind in.dat "/\xa1\xa2\xa3\xa4/" То же, что и выше, с использованием xhexfind
и простых выражений
Проверить, содержит ли файл скрипта только окончания строк UNIX LF, или формат DOS CR/LF:
sfk hexdump -showle thescript.bat
>6364202E 2E0A726D 202D7266 20746D70< cd ...rm -rf tmp 00000000
>2D73656C 66746573 740A6D6B 64697220< -selftest.mkdir 00000010
>746D702D 73656C66 74657374 0A636420< tmp-selftest.cd 00000020
>746D702D 73656C66 74657374 0A637020< tmp-selftest.cp 00000030
>2D52202E 2E2F7465 73746669 6C657320< -R ../testfiles 00000040
>74657374 66696C65 730A0A65 78706F72< testfiles..expor 00000050
>74205443 4D443D22 636D7020 2E2E2F73< t TCMD="cmp ../s 00000060
>63726970 74732F31 302D7366 6B2D7365< cripts/10-sfk-se 00000070
>6C667465 73742D64 622E7478 74220A0A< lftest-db.txt".. 00000080
>2E202E2E 2F736372 69707473 2F31322D< . ../scripts/12- 00000090
>7375622D 74657374 2D75782E 6261740A< sub-test-ux.bat. 000000a0
>0A636420 2E2E2F73 63726970 74730A< .cd ../scripts. 000000b0
Результат показывает, что сценарий имеет формат UNIX (только LF 0x0A, без CR/LF 0x0D0A)
См. также:
sfk hextobin - конвертировать hex в bin