Командване на Linux - Unix команда

име

hexdump - ascii, десетична, шестнадесетична, октална дъмп

резюме

[- bcCdovx ] -words [- e format_string ] -words [- f format_file ] -words [- n дължина ] - думи [- s пропуска ] файл ...

описание

Помощната програма hexdump е филтър, който показва посочените файлове или стандартния вход, ако не са зададени файлове, в потребителски формат.

Опциите са както следва:

-b

Един байт осмоъгълен дисплей Показва отместване на входа в шестнадесетичен, последван от шестнадесет разделени в пространството, три колони, нулирани, байтове на входните данни, в осми, на ред.

-° С

Еднобайтов символен дисплей Показва отместването на входа в шестнадесетичен, последвано от шестнадесет знака на входни данни на ред, разделени на три колони, пълни с интервал.

-° С

Canonical hex + ASCII дисплей Показва отместването на входа в шестнадесетичен, последван от шестнадесет разделени в пространство, две колони, шестнадесетичен байт, последван от едни и същи шестнадесет байта във формат% _p, затворен в символи `` | ''.

Двубайтов десетичен дисплей Показва отместването на входа в шестнадесетичен, последван от осем разделени в пространство, пет колони, попълнени с нула, двубайтови единици от входни данни, с неподражаем десетичен знак на ред.

-e format_string

Посочете струнен низ, който да се използва за показване на данни.

-f формат_файл

Посочете файл, който съдържа един или повече низове за форматиране, разделени на нов ред. Празни линии и линии, чийто първи не-празен знак е знак за хеш ( # са игнорирани.

-дълго

Интерпретирайте само дължините байтове на входа.

-o

Двубайтов осмоъгълен дисплей Показва отместването на входа в шестнадесетичен, последван от осем разделени в пространство, шест колони, нулирани, двубайтови количества входни данни, в осмици на ред.

- изместване

Пропуснете офсетните байтове от началото на входа. По подразбиране отместването се интерпретира като десетично число. С водещ отклонение 0x или 0X се интерпретира като шестнадесетично число, в противен случай с водещ 0 отместване се интерпретира като осмично число. Добавянето на буквата b k или m за компенсиране води до интерпретирането му като кратно на 512 1024 или 1048576 съответно.

-V

Опцията - v причинява hexdump да покаже всички входни данни. Без опцията - v , всеки брой групи от изходни линии, които биха били идентични с непосредствено предходната група от изходни линии (с изключение на компенсациите за вход), се заменят с линия, съставена от една звездичка.

Двубайтов шестнадесетичен дисплей Показва отместването на входа в шестнадесетичен, последван от осем, разделени в пространството, четири колони, нулирани, двубайтови количества входни данни в шестнадесетичен ред на ред.

За всеки входен файл последователно се копира входния сигнал към стандартен изход, трансформиращ данните според струните от формат, определени от опциите - e и - f , в реда, в който са били зададени.

формати

Нормалният низ съдържа произволен брой форматни единици, разделени с интервали. Единият формат съдържа до три елемента: брой итерати, брой байтове и формат.

Итеративният брой е незадължително положително цяло число, което по подразбиране е едно. Всеки формат се прилага итерация брой пъти.

Броят на байтовете е по избор положително цяло число. Ако е посочено, той определя броя на байтовете, които трябва да бъдат интерпретирани от всяка итерация на формата.

Ако е определен итеративен брой и / или брой байтове , трябва да бъде поставена единична наклонена черта след броя итерати и / или преди броят на байтовете да ги разграничи.

Всяко празно пространство преди или след наклонена черта е игнорирано.

Форматът е задължителен и трябва да бъде заобиколен от двойни цитати (""). Той се интерпретира като низ от формати в стил fprintf (виж fprintf (3)), със следните изключения:

Hexdump също така поддържа следните допълнителни конвертиращи низове:

_a [ dox ]

Покажете отместването на входа, кумулативно между входните файлове, на следващия байт, който ще се показва. Приложените знаци d o и x определят базата на дисплея като десетична, осма или шестнадесетична.

_A [ dox ]

Идентично на конверсионния низ, с изключение на това, че се изпълнява само веднъж, когато всички входни данни са обработени.

_° С

Изходни знаци в стандартния набор от знаци. Непечатни символи се показват в три знака, осцифрирани с нула, с изключение на онези, които могат да се представят със стандартно изречение (вижте по-горе), които се показват като два символни низове.

_p

Изходни знаци в стандартния набор от знаци. Непечатни символи се показват като единица "` . ''

_u

Извеждат се US ASCII знаци, с изключение на това, че контролните символи се показват, като се използват следните малки имена. Знаци по-големи от 0xff, шестнадесетичен, се показват като шестнадесетични низове.

000 nul 001 soh 002 stx 003 etx 004 eot 005 enq

006 ack 007 bel 008 bs 009 ht 00A lf 00B vt

00C ff 00D cr 00Е, така че 00F si 010 dle 011 dc1

012 dc2 013 dc3 014 dc4 015 nak 016 syn 017 etb

018 може да бъде 019 01A под 01Б esc 01C fs 01D gs

01E rs 01F us 0FF дел

Стойностите по подразбиране и поддържаните байтове за знаците за преобразуване са както следва:

% _c,% _p,% _u,% c

Един байт се брои само.

% d,% i,% o % u,% X,% x

Предпочитат се четири байта по подразбиране, един, два и четири байта.

% Е,% е,% f % G,% g

Осем байта по подразбиране са подкрепени с четири байта.

Количеството данни, интерпретирани от всеки низ от формати, е сумата от данните, изисквани от всяка форматираща единица, която представлява броя на итеренията, броят на броя на байтовете, или итерецията броят пъти броя на байтовете, изисквани от формата, ако броят на байтовете не е уточнен.

Входът се манипулира в `` блокове '', където един блок е дефиниран като най-голямото количество данни, зададено от който и да е форматен низ. Форматиране на низове, интерпретиращи данни с по-малко от данни на входния блок, чиито единици от последния формат тълкуват няколко байта и нямат определен итеративен брой, увеличават броя на итерените, докато целият входен блок бъде обработен или няма достатъчно данни оставайки в блока, за да задоволи структурния низ.

Ако в резултат на потребителската спецификация или hexdump модифицира броя на итеренията, както е описано по-горе, броя на итеренията е по-голям от един, при последната итерация няма изходни знаци.

Грешка е да посочите броя на байтовете, както и многократен знаци или редове за преобразуване, освен ако всички, освен един от знаците или струните за реализация, са _a или _A

Ако в резултат на спецификацията на опцията - n или края на файла се достигне, входните данни удовлетворяват само частично форматния низ, входният блок е нулево запълнен, за да покаже всички налични данни (т.е. всички формати на единици, които се припокриват в края на данните ще се покаже известен брой нулеви байтове).

Допълнителният изход от тези струнни формати се заменя с еквивалентен брой интервали. Еквивалентният брой интервали се дефинира като броя на интервалите, изведени от символа за конверсия s със същата ширина на полето и точността като оригиналния знак за реализация или конверсионния низ, но с всички `` `` `` `` ` # '' знаците за знак за преобразуване са премахнати и се отнасят към низ NULL.

Ако не са зададени низове на формат, екранът по подразбиране е еквивалентен на указването на опцията - x .

излиза 0 за успех и> 0, ако възникне грешка.

ПРИМЕРИ

Показване на входа в прочитателен формат:

"% 06.6_ao" 12/1 "% 3_u" "\ t \ t" "% _p" "\ n"

Прилагане на опцията -x:

"% 07.7_Ax \ n" "% 07.7_ax" 8/2 "% 04x" "\ n"

Стандарти

Услугата се очаква да бъде St -p1003.2 съвместима.