Команда: 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