Scroll to navigation

HEXDUMP(1) Корисничке наредбе HEXDUMP(1)

НАЗИВ

hexdump - приказује садржаје датотека у хексадецималном, децималном, окталном или аскри запису

УВОД

hexdump options file ...

hd options file ...

ОПИС

Алатка hexdump је филтер који приказује наведене датотеке, или стандардни улаз ако нису наведене датотеке, у формату који наведе корисник.

ОПЦИЈЕ

Испод, за аргументима величина и померај могу да следе суфикси множитеља као што су KiB (=1024), MiB (=1024*1024), и тако редом за GiB, TiB, PiB, EiB, ZiB и YiB („iB“ је опционално, нпр., „K“ има исто значење као „KiB“) или суфикси KB (=1000), MB (=1000*1000) и тако редом за GB, TB, PB, EB, ZB и YB.

-b, --one-byte-octal

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

-X, --one-byte-hex

One-byte hexadecimal display. Display the input offset in hexadecimal, followed by sixteen space-separated, two-column, zero-filled bytes of input data, in hexadecimal, per line.

-c, --one-byte-char

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

-C, --canonical

Канонски хексадецимални+АСКРИ приказ. Приказује улазни помак у хексадецималном облику, након чега следи шеснаест размаком раздвојених, у две колоне, хексадецималних бајтова, након чега следи истих шеснаест бајтова у %_p формату затворених | знаковима. Позивање програма као hd подразумева ову опцију.

-d, --two-bytes-decimal

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

-e, --format формат_ниска

Наводи ниску формата која ће се коритити за приказ података.

-f, --format-file датотека

Наводи датотеку која садржи једну или више новим редом раздвојене ниске формата. Празни редови и редови чији први не-празни знак јесте знак тарабе (#) се занемарују.

-L, --color[=када]

Прихвата јединице боје за излаз. Опциони аргумент „when“ може бити auto, never или always. Ако је аргумент „when“ изостављен, подразумева се auto. Боје се могу искључити; за текућу уграђену основност видите излаз --help. Видите испод такође пододељак Боје и одељак БОЈЕ.

-n, --length дужина

Тумачи само дужина бајта улаза.

-o, --two-bytes-octal

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

-s, --skip померај

Прескаче померај бајта од почетка улаза.

-v, --no-squeezing

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

-x, --two-bytes-hex

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

-h, --help

Приказује текст помоћи и излази.

-V, --version

Исписује издање и излази.

За сваку улазну датотеку, hexdump редом умножава улаз на стандардни излаз, претварајући податке према нискама формата које се наводе опцијама -e и -f, редом онако како су наведене.

ФОРМАТИ

Ниска формата садржи било који број јединица формата, раздвојених празнинама. Јединица формата садржи до три ставке: број понављања, број бајта и формат.

Број понављања је опционални позитиван цео број, који подразумева један. Сваки формат се примењује онолико пута колико има броја понављања.

Број бајта је опционални позитиван цео број. Ако је наведен дефинише број бајтова који ће бити протумачени сваким понављањем формата.

Ако је број понављања и/или број бајта наведен, једна коса црта мора бити постављена после броја понављања и/или пре броја бајта за њихово разликовање. Свака празнина пре или после косе црте се занемарује.

Формат се захтева и мора бити окружен дуплим наводницима (" "). Тумачи се као ниска формата у „fprintf“ стилу (видите fprintf(3)), са следећим изузецима:

1.

Звездица (*) се не може користити као ширина поља или тачност.

2.

Број бајта или тачност поља је захтевана за сваки s знак претварања (за разлику од fprintf(3) основности која исписује читаву ниску ако тачност није наведена).

3.

Знакови претварања h, l, n, p, и q нису подржани.

4.

Низови једног изменског знака описани у C стандарду су подржани:
NULL \0
<знак за узбуну> \a
<повратница> \b
<довод обрасца> \f
<нови ред> \n
<повратник реда> \r
<табулатор> \t
<усправни табулатор> \v

Ниске претварања

Алатка hexdump такође подржава следеће додатне ниске претварања.

_a[dox]

Приказује померај улаза, збирно кроз датотеке улаза, следећег бајта за приказивање. Придодати знакови d, o, и x наводе основу приказа у децималном, окталном или хексадецималном запису.

_A[dox]

Скоро истоветно са _a ниском претварања осим што се обавља само једном, када су сви улазни подаци обрађени.

_c

Исписује знакове у основном скупу знакова. Знакови који се не исписују приказани су у окталном облику од три знака, нулом пуњеним, осим оних који се могу представити стандардном излазном нотацијом (видите горе), а који се приказују као ниска од два знака.

_p

Излазни знакови у основном скупу знакова. Неисписиви знакови се приказују као једна '.'.

_u

Исписује САД АСКРИ знакове, са изузетком да су контролни знаци приказани коришћењем следећих, малим словима, назива. Знакови већи од 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 00E so 00F si 010 dle 011 dc1
012 dc2 013 dc3 014 dc4 015 nak 016 syn 017 etb
018 can 019 em 01A sub 01B esc 01C fs 01D gs
01E rs 01F us 0FF del

Боје

Када се стави на крај одредника формата, hexdump истиче одговарајућу ниску са наведеном бојом. Услови, ако су присутни, се процењују пре истицања.

_L[color_unit_1,color_unit_2,...,color_unit_n]

Потпуна синтакса јединице боје је као што следи:

[!]COLOR[:VALUE][@OFFSET_START[-END]]

!

Негира услов. Знајте да само има смисла негирати јединицу ако су и вредност/ниска и померај наведени. У том случају одговарајућа излазна ниска биће истакнута ако и само ако вредност/ниска не поклапа ону на померају.

БОЈА

Једна од 8 основних боја шкољке.

ВРЕДНОСТ

Вредност за подударање наведена у хексадецималној или окталној основи или као ниска. Знајте да се уобичајене C секвенце промене реда не тумаче hexdump-ом унутар јединица_боје.

ПОМЕРАЈ

Померај или опсег помераја на коме се врши провера за поклапањем. Знајте да усамљено ПОЧЕТАК_ПОМЕРАЈА користи исту вредност као померај КРАЈ.

Бројачи

Основни и подржани бријеви бајта за знакове претварања су као што следи:

%_c, %_p, %_u, %c

Само број једног бајта.

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

Основно је четири бајта, један, два и четири бајта број је подржан.

%E, %e, %f, %G, %g

Основно је осам бајта, број четири бајта је подржан.

Количина података које тумачи свака ниска формата је збир података потребних свакој јединици формата, што је број понављања пута број бајтова или број понављања пута број бајтова потребних формату ако број бајтова није наведен.

Улазом се манипулише у блоковима, где је блок дефинисан као највећа количина података наведена било којом ниском формата. Ниске формата које тумаче мање од вредности улазног блока, чија последња јединица формата и тумачи неки број бајтова и нема наведени број понављања, повећавају број понављања док се цео улазни блок не обради или док не буде било довољно података осталих у блоку да би се задовољила ниска формата.

Ако, било као резултат корисничке спецификације или hexdump мења број понављања као што је горе описано, број понављања је већи од један, никакви размаци на крају се не исписују за време последњег понављања.

Погрешно је навести број бајтова као и више знакова претварња или ниски осим ако сви знакови претварања или ниске осим једног нису _a или _A.

Ако, као резултат одредбе опције -n или достизања краја датотеке, улазни подаци само делимично задовољавају ниску формата, улазни блок је допуњен нулом довољно да прикаже све доступне податке (тј. било које јединице формата које се преклапају са крајем података ће приказати неки број нултих бајтова).

Даљи излаз са таквим нискама формата је замењен еквивалентним бројем размака. Еквивалентни број размака се дефинише као број размака које испише s знак претварања са истом ширином поља и прецизношћу као оригинални знак претварања или ниска претварања, али са било којим „+“, „ “, „#“ знацима опције претварања уклоњеним и упућивањем на NULL ниску.

Ако нису наведене ниске формата, основни приказ је врло сличан -x излазном формату (опција -x доводи до коришћења више простора између јединица формата него у основном излазу).

ИЗЛАЗНО СТАЊЕ

hexdump exits 0 on success and > 0 if an error occurred.

У СКАЛДУ СА

Помагало hexdump је очекивано да буде сагласно са IEEE Std 1003.2 ("POSIX.2").

ПРИМЕРИ

Приказује улаз у формату прегледа:


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

Примењује опцију -x:


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

Пример потписа подизања ГЗП-а: Истиче адресе плавичастом бојом а бајтове на померајима 510 и 511 зеленом ако је њихова вредност 0xAA55, у супротном црвеном.


"%07.7_Ax_L[cyan]\n"
"%07.7_ax_L[cyan] " 8/2 " %04x_L[green:0xAA55@510-511,!red:0xAA55@510-511] " "\n"

БОЈЕ

Обојавање излаза је примењено „terminal-colors.d(5)“ функционалношћу. Изричито обојавање се може искључити празном датотеком

/etc/terminal-colors.d/hexdump.disable

за наредбу hexdump или за све алате са

/etc/terminal-colors.d/disable

Корисничке специфичне $XDG_CONFIG_HOME/terminal-colors.d или $HOME/.config/terminal-colors.d преписују општа подешавања.

Знајте да се обојавање излаза може укључити по основи, и у том случају terminal-colors.d директоријуми не треба још да постоје.

ПРИЈАВЉИВАЊЕ ГРЕШАКА

За пријављивање грешака, користите пратиоца грешака на <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба hexdump је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-04-26 util-linux 2.40