Nosaukums
hexdump - ascii, decimālskaitlis, heksadecimāls, astotais izgāziens
Kopsavilkums
[ -bcCdovx ] -words [ -e formāts_strings ] -words [ -f formāts_fails ] -words [ -n garums ] -words [ -s skip ] fails ...
Apraksts
Hexdump lietderība ir filtrs, kurā norādīti faili vai standarta ievade, ja faili nav norādīti lietotāja norādītajā formātā.
Iespējas ir šādas:
-b
Viena baita astotais displejs Parāda ieejas nobīdi sešpadsmitajos skaitļos, pēc tam sešpadsmit ar atstarpi atdalītu, trīs kolonnu, ar nulli aizpildītu, ievadīto datu baitu, astotajā rindā.
-c
Viena baita rakstzīmju displejs Parādiet ievades nobīdi sešpadsmitais skaitlis, pēc tam sešpadsmit atstarpes atdalītas, trīs kolonnas, atstarpes aizpildītas, ievades datu rakstzīmes katrā rindiņā.
-C
Canonical hex + ASCII displejs Parādiet ievades nobīdi sešpadsmitais skaitlis, seko sešpadsmit ar atstarpi atdalītu, divu kolonnu, heksadecimālo baiti, pēc tam sešpadsmit baiti% _p formātā, kas ietverti `` | '' rakstzīmēs.
-d
Divu baitu decimāldaļskaitlis Parāda ievades nobīdi sešpadsmitajos skaitļos, kam seko astoņi atstarpi atdalītie, pieci kolonnas, ar nulli aizpildīti, divu baitu ievades datu vienumi ar nenozīmētu decimāldaļu katrā rindiņā.
-e format_string
Norādiet formāta virkni, ko izmantos datu parādīšanai.
-f format_file
Norādiet failu, kurā ir viena vai vairākas atkārtotas teksta atdalītas formātu virknes. Tukšas līnijas un līnijas, kuru pirmais ne-tukšs raksturs ir hash zīme ( # tiek ignorēta.
-n garums
Interpretējiet tikai ievades garuma baitus.
-o
Divu baitu astotais displejs Parāda ieejas nobīdi sešpadsmitajos skaitļos, kam seko astoņi simti atdalītie, seši kolonnas ar nulli aizpildīti divbetu ievades dati.
-s kompensēt
Izlaist nobīdes baitus no ievades sākuma. Pēc noklusējuma nobīde tiek interpretēta kā decimālskaitlis. Ar galveno 0x vai 0X nobīdi tiek interpretēts kā heksadecimālais skaitlis, pretējā gadījumā ar galveno 0 nobīdi tiek interpretēts kā astotais numurs. Pievienojot rakstzīmi b k vai m, lai kompensētu, tas ir jāinterpretē kā daudzkārtējs attiecīgi 512 1024 vai 1048576 .
-v
Opcija -v izraisa hexdump, lai parādītu visus ievadītos datus. Bez opcijas -v , jebkurš skaits izejas līniju grupu, kas būtu identisks tūlītējai izejas līniju grupai (izņemot ieejas kompensācijas), tiek aizstātas ar līniju, kas sastāv no viena zvaigznīte.
-x
Divu baitu heksadecimālais displejs Parādiet ievades nobīdi sešpadsmitajos skaitļos, seko astoņus atstarpes, četrus kolonnas, nulles aizpildītus, divu baitu ievades datu apjomus, heksadecimālajā rindiņā.
Katram ievades failam secīgi kopijas ievadi standarta izvadam, pārveidojot datus saskaņā ar formāta virknes, kas norādītas e- un- f opcijās, tādā secībā, kādā tās tika noteiktas.
Formāti
Formāta virkne satur jebkuru formāta vienību skaitu, ko atdala atstarpes. Formāta vienībā ir līdz trim vienībām: atkārtojuma skaitam, baitu skaitam un formātam.
Atkārtojuma skaitlis ir neobligāts pozitīvs vesels skaitlis, kas pēc noklusējuma ir viens. Katram formātam tiek piemērots iterācijas skaitīšanas laiks.
Baits ir neobligāts pozitīvs vesels skaitlis. Ja norādīts, tas definē baitu skaitu, kas jāinterpretē katrā formāta iterācijā.
Ja ir norādīts iterācijas skaitlis un / vai baitu skaits, pēc atkārtojuma skaita un / vai pirms baitu skaita ir jāievieto viena slīpsvītra zīme, lai tās neatbilstu.
Jebkuras atstarpes pirms vai pēc slīpsvītras tiek ignorētas.
Formāts ir nepieciešams, un tam jābūt ieskaujam ar dubultklikšķu ("") zīmēm. To interpretē kā fprintf stila formātu virkni (sk. Fprintf (3)) ar šādiem izņēmumiem:
- Zvaigznīti (*) nedrīkst izmantot kā lauka platumu vai precizitāti.
- Katram `` s '' konversijas raksturlielumam ir nepieciešams baitu skaits vai lauka precizitāte (atšķirībā no noklusējuma fprintf (3), kas izdrukā visu rindu, ja precizitāte nav norādīta).
- Konvertācijas rakstzīmes `` h '', `` l '', `` n '', `` p '' un `` q '' netiek atbalstītas.
- Viena rakstzīmju aizvēršanas sekvences, kas aprakstītas C standarta ietvaros, tiek atbalstītas:
NUL \ 0
\ a
\ b
\ f
\ n
\ t
\ v
Hexdump atbalsta arī šādas papildu reklāmguvumu virknes:
_a [ doks ]
Parādiet nākamā baidi, kas tiks rādīts, ievades nobīdei, kas kopīgi ar ievades failiem. Pievienotās rakstzīmes d o un x norāda displeja bāzi attiecīgi kā decimālskaitļi, astoņi vai heksadecimāli.
_A [ doks ]
Identisks konversijas virknē, izņemot to, ka tas tiek veikts tikai vienreiz, kad visi ievades dati ir apstrādāti.
_c
Izvades rakstzīmes noklusējuma rakstzīmju kopa. Nonprinting rakstzīmes tiek parādītas trīs rakstzīmes ar nulles polsterētu astoņu simbolu, izņemot tos, kurus var attēlot ar standarta izlaišanas apzīmējumu (skatīt iepriekš), un tie tiek parādīti kā divas rakstzīmju virknes.
_p
Izvades rakstzīmes noklusējuma rakstzīmju kopa. Nonprinting rakstzīmes tiek parādītas kā viens `` . ''
_u
Izvadi ASV ASCII rakstzīmes, izņemot to, ka vadības rakstzīmes tiek parādītas, izmantojot šādus, mazos burtus. Rakstzīmes, kas ir lielākas par 0xff, heksadecimālām, tiek parādītas kā heksadecimālās virknes.
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 tā 00F si 010 dle 011 dc1
012 dc2 013 dc3 014 dc4 015 nak 016 syn 017 etb
018 var 019, 01A, 01B, 01C, 01D, gs
01E rs 01F mums 0FF del
Konversijas rakstzīmju noklusējuma un atbalstītā baitu skaits ir šāds:
% _c,% _p,% _u,% c
Viens baitu skaits.
% d,% i,% o % u,% X,% x
Četri baitu noklusējuma, viens, divi un četri baitu skaitļi ir atbalstīti.
% E,% e,% f % G,% g
Astoņi baitu noklusējuma, četri baitu skaitļi ir atbalstīti.
Datu apjoms, ko interpretē katra formāta virkne, ir datu summa, ko pieprasa katra formāta vienība, kas ir atkārtojuma skaits, kas ir baitu skaits, vai atkārtojuma skaits, kas ir baitu skaits, kas vajadzīgs formātā, ja nav baitu skaita norādīts.
Ievads tiek manipulēts ar `` blokiem '', kur bloks ir definēts kā lielākais datu apjoms, ko norāda jebkura formāta virkne. Formatēt strings, kas interpretē mazāk nekā ievades bloks vērtību datiem, kuru pēdējā formāta vienība gan interpretē dažu baitu skaitu un nav noteiktā iterācijas skaita, ir jāpalielina atkārtojuma skaitīšana, līdz viss ievades bloks ir apstrādāts vai nav pietiekami daudz datu paliek blokā, lai apmierinātu formāta virkni.
Ja vai nu lietotāja specifikācijas vai hexdump rezultātā, kas pārveido iterācijas skaitīšanu, kā aprakstīts iepriekš, atkārtojuma skaitlis ir lielāks par vienu, pēdējās atkārtojuma laikā nav izvadītas atstarpes atstarpes rakstzīmes.
Tā ir kļūda, norādot baitu skaitu, kā arī vairākas reklāmguvumu rakstzīmes vai virknes, ja vien visas, izņemot vienu no konvertēšanas rakstzīmēm vai virknes, nav _a vai _A
Ja, ņemot vērā n- opcijas vai faila beigas specifikāciju, ievades dati tikai daļēji atbilst formāta virknei, ievades bloks ir pietiekami nulli, lai parādītu visus pieejamos datus (ti, visas formāta vienības, kas pārklājas datu beigās būs redzams daži nulles baiti).
Šādu formātu virkņu papildu rezultātu aizstāj ar līdzvērtīgu vietu skaitu. Līdzvērtīgu vietu skaitu definē kā telpu skaitu, ko izvada ar s konvertēšanas rakstzīmi ar tādu pašu lauka platumu un precizitāti kā sākotnējo konvertēšanas rakstzīmi vai reklāmguvumu virkni, bet ar jebkuru `` + '' `` `` `` `` ## '' Noņemta reklāmguvuma karodziņu un atsauces uz NULL virkni.
Ja nav norādītas formātu virknes, noklusējuma displejs ir līdzvērtīgs x- opcijas norādīšanai.
iziet no 0 uz panākumiem un> 0, ja radusies kļūda.
PIEMĒRI
Parādiet ievadi izlases formātā:
"% 06.6_ao" 12/1 "% 3_u" "\ t \ t" "% _p" "\ n"Ieviest -x opciju:
"% 07.7_Ax \ n" "% 07.7_ax" 8/2 "% 04x" "\ n"Standarti
Paredzams, ka lietderība būs saderīga ar St -p1003.2.