Hexdump - Linux Command - Unix Command

naam

hexdump - ascii, desimale, heksadesimale, oktale dump

opsomming

[- bcCdovx ] -woorde [- e format_string ] -woorde [- f format_file ] -woorde [- n lengte ] -woorde [- s slaan ] lêer ...

beskrywing

Die hexdump nut is 'n filter wat die gespesifiseerde lêers, of die standaard insette vertoon, indien geen lêers gespesifiseer is, in 'n gebruiker se gespesifiseerde formaat.

Die opsies is soos volg:

-b

One-byte octal display Wys die invoer offset in hexadecimal, gevolg deur sestien spasie geskei, drie kolom, nul-gevulde, grepe invoer data, in oktaal, per lyn.

-c

Een-byte-karakterdisplay Wys die insetverstelling in heksadesimaal, gevolg deur sestien spasies geskei, drie kolom, spasievol, karakters van insetdata per reël.

-C

Kanonieke heks + ASCII-skerm. Wys die insetverstelling in heksadesimaal, gevolg deur sestien spasies geskei, twee kolomme, heksadesimale grepe, gevolg deur dieselfde sestien grepe in% _p formaat ingesluit in `` | '' karakters.

d

Twee-byte desimale vertoning Wys die invoerverstelling in heksadesimaal, gevolg deur agt spasie geskeide, vyf kolom, zero-gevulde, twee-byte-eenhede van insetdata, in ongetekende desimale, per reël.

-e format_string

Spesifiseer 'n formaatstring wat gebruik word vir die vertoon van data.

-f format_file

Spesifiseer 'n lêer wat een of meer nuwe geskeide formaat snare bevat. Leë lyne en lyne waarvan die eerste nie-leë karakter 'n hash-merk is ( # word geïgnoreer.

n lengte

Vertolk slegs lengte grepe van insette.

o

Twee-byte-oktaal-vertoning Toon die insetverstelling in heksadesimaal, gevolg deur agt spasie geskeide, ses kolom, nul-gevulde, twee-byte hoeveelhede insetdata, in oktaal, per reël.

-verreken

Slaan afwykende grepe oor vanaf die begin van die insette. Standaard word verreken as 'n desimale getal geïnterpreteer. Met 'n leidende 0x of 0X offset word geïnterpreteer as 'n heksadesimaal, anders word 'n voorste 0- offset geïnterpreteer as 'n oktale getal. Byvoeging van die karakter b k of m om te verreken, veroorsaak dat dit as 'n veelvoud van 512 1024 of 1048576 geïnterpreteer word.

v

Die - v opsie veroorsaak dat hexdump alle insetdata vertoon. Sonder die - v opsie, sal enige aantal groepe uitvoerlyne wat identies is aan die onmiddellik voorafgaande groep uitsetlyne (behalwe die insetverrekenings), vervang word met 'n lyn wat uit 'n enkele asterisk bestaan.

-x

Twee-byt-heksadesimale skerm Wys die insetverstelling in heksadesimaal, gevolg deur agt, spasie geskei, vier kolom, nul-gevulde, twee-byte hoeveelhede insetdata, in heksadesimaal, per reël.

Vir elke insetlêer, kopieer die invoer na standaarduitvoer opeenvolgend, en verander die data volgens die formaatstringe wat deur die - e en - f opsies gespesifiseer word, in die volgorde waarin hulle gespesifiseer is.

formate

'N Formatiestring bevat enige aantal formateenhede, geskei deur witruimte. 'N Formateenheid bevat tot drie items: 'n iterasie telling, 'n byte telling en 'n formaat.

Die iterasie telling is 'n opsionele positiewe heelgetal, wat een van die een is. Elke formaat word toegepaste iterasie tel tye.

Die byte telling is 'n opsionele positiewe heelgetal. As gespesifiseer, definieer dit die aantal grepe wat geïnterpreteer moet word deur elke herhaling van die formaat.

As 'n iterasie telling en / of 'n byte telling gespesifiseer word, moet 'n enkele streep na die iterasie telling geplaas word en / of voor die byt telling om dit te disambiguateer.

Enige witruimte voor of na die sny word geïgnoreer.

Die formaat is nodig en moet omring word deur dubbele kwotasie ("") punte. Dit word geïnterpreteer as 'n fprintf-styl snaar string (sien fprintf (3)), met die volgende uitsonderings:

Hexdump ondersteun ook die volgende bykomende omskakelingstringe:

_a [ dox ]

Wys die insetverskil, kumulatief oor insetlêers, van die volgende byte wat vertoon moet word. Die aangehegte karakters d o en x spesifiseer die vertoningsbasis onderskeidelik as desimale, oktaal of heksadesimale.

_A [ dox ]

Identifiseer aan die _a- omskakelingst string behalwe dat dit eers een keer uitgevoer word wanneer al die insetdata verwerk is.

_c

Output karakters in die standaard karakterset. Nie-drukbare karakters word vertoon in drie karakters, met nulkantige oktaal, behalwe dié wat deur standaard ontsnappingsnotasie (sien hierbo) voorgestel word, wat as twee karakters vertoon word.

_p

Output karakters in die standaard karakterset. Nie-drukbare karakters word as 'n enkele `` vertoon . ''

_u

Uitvoer US ASCII karakters, met die uitsondering dat die beheer karakters vertoon word met behulp van die volgende, kleinletters, name. Karakters groter as 0x, heksadesimaal, word as heksadesimale snare vertoon.

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

006 ack 007 bel 008 bs 009 ht 00A lv 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 kan 019 em 01A sub 01B esc 01C fs 01D gs

01E rs 01F ons 0FF del

Die standaard en ondersteunde byte tellings vir die omskakeling karakters is soos volg:

% _c,% _p,% _u,% c

Een byte tel slegs.

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

Vier byte standaard, een, twee en vier byte tellings word ondersteun.

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

Agt byte standaard, vier byte tellings ondersteun.

Die hoeveelheid data wat deur elke formaatstring geïnterpreteer word, is die som van die data wat deur elke formaat eenheid benodig word, wat is die iterasie telling keer die byt telling, of die iterasie tel keer die aantal grepe wat deur die formaat benodig word as die byte telling nie gespesifiseerde.

Die inset word gemanipuleer in `` blokke '' ', waar 'n blok gedefinieer word as die grootste hoeveelheid data wat deur enige formaatstring gespesifiseer word. Formaat snare interpreteer minder as die waarde van data van 'n insetblok, waarvan die laaste formaatseenheid albei aantal grepe interpreteer en nie 'n gespesifiseerde iterasie telling het nie, die iterasie telling verhoog tot die hele insetblok verwerk is of daar nie genoeg data is nie oorbly in die blok om die formaatstring te bevredig.

As, as gevolg van gebruikerspesifikasie of heksdump wat die iterasie telling verander soos hierbo beskryf, is 'n iterasie telling groter as een, geen agtergrondse witkarakters word tydens die laaste iterasie uitgereik nie.

Dit is 'n fout om 'n byte telling sowel as veelvoudige omskakeling karakters of snare te spesifiseer tensy almal behalwe een van die omskakeling karakters of snare _a of _A is

As as gevolg van die spesifikasie van die - n opsie of einde van die lêer bereik word - inset data slegs gedeeltelik voldoen aan 'n formatreeks, is die insetblok voldoende genoeg om alle beskikbare data te vertoon (dws enige formaat eenhede oorvleuel die einde van die data sal 'n aantal van die nul grepe vertoon).

Verdere uitsette deur sulke formaat snare word vervang deur 'n ekwivalente aantal spasies. 'N Ekwivalente aantal spasies word gedefinieer as die aantal spasies wat deur 'n s- omskakelingskarakter met dieselfde veldwydte en presisie as die oorspronklike omskakelingsteken of omskakelingstring, maar met enige `` + ' '``' '`` # ' ' Omskakeling vlag karakters verwyder, en verwysing na 'n NULL-string.

As geen snypunte gespesifiseer is nie, is die verstek vertoon gelykstaande aan die - x opsie.

verlaat 0 op sukses en> 0 as daar 'n fout opgetree het.

VOORBEELDE

Wys die insette in inlesingsformaat:

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

Implementeer die -x opsie:

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

standaarde

Die nut sal na verwagting St -p1003.2 versoenbaar wees.