Kā izveidot failu vai teksta virkni hexdump

Ievads

Heksadumpārs ir datu heksadecimālais skats. Iespējams, vēlēsieties izmantot sešpadsmitais skaitlis, kad atkļūstat programmu vai pārprogrammējiet programmu.

Piemēram, daudziem failu formātiem ir īpašas hekses rakstzīmes, lai apzīmētu to tipu. Ja mēģināt lasīt failu, izmantojot programmu, un kāda iemesla dēļ tas netiek pareizi ievietots, iespējams, ka failam nav paredzētā formāta.

Ja vēlaties redzēt, kā programma darbojas, un jums nav avota koda vai programmatūras daļas, kas kodu pārprojektē, varat apskatīt hex demo, lai mēģinātu izdomāt, kas notiek.

Kas ir heksadecimāls?

Datori domā bināros . Par katru rakstzīmi, skaitli un simbolu atsaucas ar bināro vai vairāku bināro vērtību.

Cilvēkiem tomēr ir tendence domāt pēc decimāldaļas.

Tūkstošiem Simtiem Desmitiem Vienības
1 0 1 1

Kā cilvēki, mūsu zemākie numuri tiek saukti par vienībām un ir skaitļi no 0 līdz 9. Kad mēs nokļūstam līdz 10, mēs atiestatām vienību kolonnu atpakaļ uz 0 un pievienojam 1 uz desmitu kolonnu (10).

128 64 32 16 8 4 2 1
1 0 0 1 0 0 0 1

Divkāršā skaitā viszemākais skaitlis ir tikai 0 un 1. Kad mēs iegūstam pagātnes 1, mēs ievietojam 1 2 kolonnā un 0 kolonā. Ja jūs vēlaties attēlot 4, jūs ievietojat 1 4 kolonnā un atiestatīsiet 2 un 1 sleju.

Tādēļ, lai pārstāvētu 15, jums būtu 1111, kas nozīmē 1 astoņu, 1 četru, 1 divu un 1 vienu. (8 + 4 + 2 + 1 = 15).

Ja mēs skatījām datu failu binārā formātā, tas būtu absolūti milzīgs un gandrīz neiespējami saprast.

Nākamais solis uz augšu no bināriem ir astoņkājiens, kas izmanto 8 kā bāzes numuru.

24 16 8 1
0 1 1 0

Astotajā sistēmā pirmā kolonna sākas no 0 līdz 7, otrā kolonna ir no 8 līdz 15, trešā sleja no 16 līdz 23 un ceturtā kolonna no 24 līdz 31 un tā tālāk. Lai gan parasti ir vieglāk lasāms nekā binārais, lielākā daļa cilvēku izvēlas izmantot heksadecimālo.

Sērijas numurs ir 16 simboli. Tagad tas ir, ja tas kļūst mulsinoši, jo, kā cilvēki mēs domājam par cipariem no 0 līdz 9.

Tātad, ko lieto 10, 11, 12, 13, 14, 15? Atbilde ir vēstules.

Tādējādi vērtība 100 tiek apzīmēta ar 64. Jums būs nepieciešams 6 no 16 s kolonnas, kas palielina 96 un pēc tam 4 vienību slejā 100.

Visas faila rakstzīmes tiks apzīmētas ar heksadecimālo vērtību. Kādas šīs vērtības nozīmē, ir atkarīgs no paša faila formāta. Faila formāts tiek apzīmēts ar sešpadsmitdaļām vērtībām, kuras parasti tiek glabātas faila sākumā.

Ar zināšanām par sešcenvirzienu vērtību secību, kas parādās failu sākumā, varat manuāli noteikt, kādā formātā ir šis fails. Faila skatīšana hex dump var palīdzēt jums atrast slēptās rakstzīmes, kas nav redzamas, kad fails ir ielādēts normālā teksta redaktorā.

Kā izveidot Hex Dump izmantojot Linux

Lai izveidotu heksadumpu, izmantojot Linux, izmantojiet hexdump komandu.

Lai displejā parādītu failu kā terminālu (standarta izvadi), izpildiet šādu komandu:

hexdump faila nosaukums

Piemēram

hexdump image.png

Noklusējuma izvade rāda rindas numuru (heksadecimālajā formātā) un pēc tam 8 rindas četru heksadecimālās vērtības.

Piemēram:

00000000 5089 474e 0a0d 0a1a 0000 0d00 4849 5244

Jūs varat piegādāt dažādus slēdžus, lai mainītu noklusējuma izvadi. Piemēram, norādot mīnus b slēdzi, tiks izveidots 8 ciparu nobīde, kam seko 16 trīs kolonnas, nulles aizpildītas, ievades dati baitos oktāla formātā.

hexdump-b image.png

Tādēļ iepriekš minētais piemērs tiks attēlots šādi:

00000000 211 120 116 107 015 012 032 012 000 000 000 015 111 110 104 122

Iepriekšminētais formāts ir pazīstams kā viena baita astotais displejs.

Vēl viens veids, kā apskatīt failu, ir viena baita rakstzīmju displejs, izmantojot mīnus c slēdzi.

hexdump-c image.png

Tas atkal parāda kompensāciju, bet šoreiz sešpadsmit atstarpes atdalītas vietas, trīs kolonnas, atstarpes aizpildītas ieejas datu rakstzīmes katrā rindiņā.

Citas iespējas ir Canonical hex + ascii displejs, kuru var parādīt, izmantojot mīnus C slēdzi un divbetu decimāldaļu displeju, ko var parādīt, izmantojot mīnus d slēdzi. Minus o slēdzi var izmantot, lai parādītu divu baitu astotajam displejam. Visbeidzot minux x slēdzi var izmantot, lai parādītu divbetu heksadecimālo displeju.

hexdump-image.png

hexdump -d image.png

hexdump -o image.png

hexdump-x image.png

Ja neviens no iepriekš minētajiem formātiem neatbilst jūsu vajadzībām, izmantojiet mīnus e slēdzi, lai norādītu formātu.

Ja jūs zināt, ka datu fails ir ļoti garš un jūs vienkārši vēlaties redzēt pirmās rakstzīmes, lai noteiktu tā veidu, varat izmantot -n slēdzi, lai norādītu, cik liela daļa faila tiek rādīta hex.

hexdump -n100 image.png

Iepriekšējā komanda parāda pirmo simts baitu.

Ja vēlaties izlaist daļu faila, varat izmantot mīnus s slēdzi, lai iestatītu nobīdi, no kuras sākas.

hexdump -s10 image.png

Ja neiesniedzat faila nosaukumu, teksts tiek nolasīts no standarta ievades.

Vienkārši ievadiet šādu komandu:

hexdump

Pēc tam ievadiet tekstu standarta ievadīšanā un pabeidziet, ierakstot atmest. Hex tiks parādīts uz standarta izvadi.

Kopsavilkums

Hexdump lietderība, protams, ir diezgan spēcīgs rīks, un jums noteikti vajadzētu izlasīt rokasgrāmatas lapu, lai pilnībā iepazītos ar visām funkcijām.

Jums vajadzēs labu izpratni par to, ko jūs meklējat, lasot izlaidi.

Lai apskatītu rokasgrāmatas lapu, palaidiet šo komandu:

cilvēks hexdump