Hexdump - Linux Command - Unix komanda

vardas

hexdump - ascii, dešimtainis, šešioliktainis, oktaninis sąvartynas

Anotacija

[- bcCdovx ] -words [ -e format_string ] -words [ -f format_file ] -words [ -n ilgis ] -words [ -s skip ] file ...

apibūdinimas

"Hexdump" programa yra filtras, kuriame rodomi nurodyti failai, arba standartinis įvedimas, jei nenurodyta jokių failų vartotojo nurodytu formatu.

Galimos tokios parinktys:

-b

Vieno baito aštuonkis ekranas Rodomas įvesties kompensavimas šešioliktainėje formoje, po jo septyniolika atskirtų tarpų, trys stulpeliai, užpildyti nuliais, įvesties duomenų baitai, octal, kiekvienoje eilutėje.

-c

Vieno baito simbolių ekranas Rodomas įvesties kompensavimas šešioliktainėje, po jo septyniolika atskirtų tarpų, trys stulpeliai, užpildyti erdvėje, kiekvienos eilutės įvesties duomenų simboliai.

-C

Canonical hex + ASCII ekranas Rodo įvesties kompensavimą šešioliktainėje formoje, po to šešiolika atskirtų tarpų, du stulpelius, šešioliktainius baitus, po to septyniasdešimt baitų% _p formatu, įterptu į `| '' simbolius.

-d

Dviašis dešimtainis ekranas Rodomas įvesties kompensavimas šešioliktainėje formoje, po kurio eina aštuonios atskiriamos, penkios stulpelės, užpildytos nuliui, dviejų baitų įvesties duomenų vienetai, nenurodyti dešimtainėje eilutėje.

-e format_string

Nurodykite formato eilutę, kuri bus naudojama rodyti duomenis.

-f format_file

Nurodykite failą, kuriame yra viena ar kelios naujos eilutės atskirtos formos eilutės. Tuščios eilutės ir eilutės, kurių pirmasis neužpildytas simbolis yra maišos ženklas ( # ignoruojamas.

-l ilgis

Interpretuokite tik įvesties ilgio baitus.

-o

Dviejų baitų aštuonkis ekranas Rodomas įvesties kompensavimas šešioliktainėje formoje, po to aštuoniolikoje eilutėje po aštuonkampį skaičiuojama aštuonių skaičių aštuonių skaičių iš eilės su aštuoniais skaičiais išdėstytų aštuonių atskirų šešių stulpelių, užpildytų nuline, dviem baitais.

-s kompensuoti

Praleiskite asimetrinius baitus nuo įvesties pradžios. Pagal numatytuosius nustatymus poslinkis yra skaitomas dešimtainiu skaičiumi. Su pagrindiniu 0x arba 0X poslinkiu interpretuojamas kaip šešioliktainis skaičius, priešingu atveju su didžiausiu 0 poslinkiu interpretuojamas kaip aštuonkis numeris. Pridedant simbolį b k arba m, kad kompensuotų, jis turi būti aiškinamas atitinkamai kaip 512 1024 arba 1048576 kartotinis.

-v

Pasirinkus "- v", hexdump parodo visus įvesties duomenis. Be -v parinkties, bet koks skaičius išėjimo linijų grupių, kurios būtų identiškos tuoj pat ankstesnei išvesties linijų grupei (išskyrus įvesties kompensacijas), pakeičiamos linija, susidedančia iš vieno žvaigždutė.

-x

Dviašis šešioliktainis ekranas Rodo įvesties kompensavimą šešioliktainėje, o po to aštuoni, atskirti tarpai, keturi stulpeliai, užpildyti nuliui, dviejų baitų įvesties duomenų kiekiai šešioliktainėje eilutėje.

Kiekvienam įvesties failui nuosekliai kopijuoja įvestį į standartinę išvestį, transformuojant duomenis pagal formatų eilutes, nurodytas " e" ir "- f" parinktyse, nurodytoje jų užsakyme.

Formatai

Formato eilutėje yra bet koks formatų vienetų skaičius, atskirtas tarpu. Formato blokas turi ne daugiau kaip tris elementus: iteracijų skaičių, baitų skaičių ir formą.

Iteracijų skaičius yra neprivalomas teigiamas sveikasis skaičius, kuris pagal nutylėjimą yra vienas. Kiekvienas formatas taikomas iteracijų skaičiavimo kartoms.

Baitų skaičius yra neprivalomas teigiamas sveikasis skaičius. Jei nurodyta, jis apibrėžia baitų skaičių, kuris turi būti aiškinamas kiekvienoje formos iteracijoje.

Jei nurodomas iteracijų skaičius ir (arba) baitų skaičius, po iteracijos skaičiaus ir (arba) prieš baitų skaičių turi būti pateiktas atskiras brūkšnys, kad jie būtų suvienodinti.

Bet kokia tarpai prieš brūkšnį arba po jos ignoruojama.

Formatas reikalingas ir turi būti suprantamas dvigubais citatais (""). Tai interpretuojama kaip fprintf stiliaus formato eilutė (žr. Fprintf (3)) su šiomis išimtimis:

Hexdump taip pat palaiko šias papildomas konversijos eilutes:

_a [ dox ]

Rodomas indėlio poslinkis, kaupiamasis per įvesties failus, kito baito, kuris bus rodomas. Pridedami simboliai d o ir x nurodo rodymo bazę, atitinkamai dešimtainę, oktalinę arba šešioliktainę.

_A [ dox ]

Panaši konversijos eilutė, išskyrus tai, kad ji atliekama tik vieną kartą, kai visi įvesties duomenys buvo apdoroti.

_c

Išvesties simboliai numatytojo simbolių rinkinyje. Nespausdinami simboliai rodomi trimis simboliais, nuliniu padengtuoju aštuoniu, išskyrus tuos, kuriuos galima pateikti pagal standartinį pabėgėlių žymėjimą (žr. Aukščiau), kurie rodomi kaip dvi simbolių eilutės.

_p

Išvesties simboliai numatytojo simbolių rinkinyje. Nonprinting simboliai rodomi kaip vienas `` . ''

_u

Išvesties US ASCII simboliai, išskyrus tai, kad valdymo simboliai rodomi naudojant žemiau pateiktus pavadinimus. Simboliai didesni nei 0xff, šešioliktainiai, rodomi kaip šešioliktainės stygos.

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 taip 00F si 010 dle 011 dc1

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

018 gali 019 01 01 01 01 01 01 01 07 01 01

01E rs 01F us 0FF del

Numatytųjų ir palaikomų baitu skaičių konversijos ženklų yra tokie:

% _c,% _p,% _u,% c

Viena baitas skaičiuojamas tik.

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

Numatyta keturi baitai, vienas, du ir keturi baitu skaičiai palaikomi.

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

Aštuoni baitai pagal nutylėjimą palaikomi keturi baitų skaičiai.

Kiekvienos formatų eilutės interpretuotų duomenų suma yra kiekvieno formato vieneto reikalaujamų duomenų suma, tai yra kartotinis skaičiavimas, skaičiuojamas pagal baitų skaičių, arba kartotinis skaičiaus kartų skaičius, reikalaujamas formato baitų, jei nėra baitų skaičiaus nurodytas.

Įvestis manipuliuojama "blokuose", kur blokas apibrėžiamas kaip didžiausias duomenų kiekis, nurodytas bet kurios formos eilutės. Formato stygos, verčiančios mažiau nei įvesties bloko verta duomenų, kurių paskutinis formato blokas interpretuoja keletą baitų skaičiaus ir neturi nurodyto iteracijų skaičiaus, turi būti padidintas iteracijų skaičius, kol visas įvesties blokas buvo apdorotas arba nėra pakankamai duomenų lieka blokas, kad atitiktų formos eilutę.

Jei dėl naudotojo specifikacijos ar hexdump, pakeičiančio iteracijų skaičių, kaip aprašyta aukščiau, iteracijų skaičius yra didesnis nei vienas, o paskutinės iteracijos metu nėra išeinančių tarpų simbolių.

Tai klaida nurodyti baitų skaičių, taip pat keletą konversijos ženklų ar eilučių, išskyrus atvejus, kai visi, išskyrus vieną konversijos ženklų ar eilučių, yra _a arba _A

Jei dėl pasirinkimo - n ar failo pabaigos specifikacijos rezultatų pasiekiamas įvesties duomenys tik iš dalies atitinka formato eilutę, įvesties blokas yra pakankamai nulinis, kad būtų rodomi visi turimi duomenys (ty, visi formatai, kurie sutampa duomenų pabaigoje bus rodomas nulis baitų skaičius).

Toliau išvesta tokia formato eilutė pakeičiama lygiaverčiu skaičiumi tarpų. Ekvivalentinis skaičius tarpų apibrėžiamas kaip erdvių skaičius, išvestas s konversijos simboliu su tuo pačiu lauko pločiu ir preciziškumu kaip pirminis konversijos simbolis arba konversijos eilutė, bet su bet kuriuo `` + '' `` `` `` `` # '' Ištrinti konversijos vėliava simboliai ir nukreipti NULL eilutę.

Jei nenurodyta jokių formatų eilučių, numatytasis ekranas yra lygiavertis x- parinkčiai.

išeina iš sėkmės 0 ir> 0, jei įvyko klaida.

PAVYZDŽIAI

Rodomas įvestis peržiūros formatu:

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

Įdiekite -x parinktį:

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

Standartai

Tikimasi, kad naudingumas bus suderinamas su St-p1003.2.