Kuidas luua faili või tekstistringi hexdump

Sissejuhatus

Hex-dump on kuueteistkümnendsüsteemiline andmete vaade. Võimalik, et soovite programmiga silumiseks või programmi pöördprojekteerimiseks kasutada heksade kestust.

Näiteks on paljudel failivormingutel oma tüübi tähistamiseks spetsiifilised kuusnurksed märgid. Kui proovite faili lugeda programmi kasutades ja mingil põhjusel ei laadita seda õigesti, võib olla, et fail ei ole vormingus, mida te ootate.

Kui soovite näha, kuidas programm töötab ja teil puudub lähtekood või tarkvaraprogramm, mis koodi pöördprojekteerib, saate vaadata hex dumpi, et proovida ja toimida.

Mis on kuueteistkümnend?

Arvutid mõtlevad binaarfailides . Iga tähemärki, numbrit ja sümbolit viitab binaarne või mitu binaarväärtust.

Inimesed kipuvad mõtlema kümnendkohani.

Tuhanded Sajad Kümned Osakud
1 0 1 1

Nagu inimestel, nimetatakse meie madalaimat numbrit ühikuteks ja need tähistavad numbreid 0 kuni 9. Kui me jõuame 10-ni, lähtesime ühikute veeru tagasi 0-ni ja lisame 1 kümnete kolonni (10) juurde.

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

Binaarfunktsioonis on madalaim arv ainult 0 ja 1. Kui me saame mineviku 1, paneme 1 2-nda veergu ja 0 veerus 1. Kui soovid esindada 4, pannakse neljas veerus 1 ja lähtestatakse 2 ja 1 veerg.

Selleks, et esindada 15, oleks sul 1111, mis tähistab 1 kaheksa, 1 nelja, 1 kaks ja 1 üks. (8 + 4 + 2 + 1 = 15).

Kui vaatame andmefaili kahendkanalina, oleks see täiesti tohutu ja peaaegu võimatu mõista.

Järgmine samm kaheksast on oktaniline, mis kasutab põhinumbrina 8.

24 16 8 1
0 1 1 0

Kaheksaasises süsteemis on esimene veerg 0 kuni 7, teine ​​veerg on 8 kuni 15, kolmas veerg 16 kuni 23 ja neljas veerg 24 kuni 31 ja nii edasi. Kuigi üldiselt on lihtsam lugeda kui binaarne, eelistavad enamik inimesi kuueteistkümnendina kasutama.

Kuueteistkümnendsüsteemis kasutatakse baasnumbrit 16. Nüüd on see segane, sest inimestena arvame numbritega 0 kuni 9.

Nii et mida kasutatakse 10, 11, 12, 13, 14, 15? Vastus on kirjad.

Väärtus 100 on seega 64. Te vajate 6 16-st veerust, mis tõstavad 96-ni ja seejärel 4 ühikutesse, mis moodustavad 100.

Kõik faili sümbolid tähistatakse kuueteistkümnendväärtusega. Need väärtused sõltuvad faili enda vormingust. Faili vormingut tähistatakse kuueteistkümnendväärtusega, mis on tavaliselt faili alguses salvestatud.

Teades , et failide alguses kuvatakse kuueteistkümnenda väärtuse järjestus, saate käsitsi kindlaks määrata, millises vormingus see fail on. Faili vaatamine hex-dumpis aitab teil leida varjatud tähemärke, mida ei näidata faili ajal laaditakse tavalisse tekstiredaktorisse.

Kuidas luua Hex Dump kasutades Linuxi

Linuxi jaoks hex dumpi loomiseks kasutage hexdump käsku.

Faili kuvamiseks terminali hex (standardväljund) käivitage järgmine käsk:

hexdump failinimi

Näiteks

hexdump image.png

Vaikimisi kuvatakse rea number (kuueteistkümnendsüsteemis) ja seejärel 8 rea nelja kuueteistkümnemiku väärtust.

Näiteks:

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

Vaikeväljundi muutmiseks võite esitada erinevad lülitid. Näiteks miinus b-lüliti määrab 8-kohalise nihke, millele järgneb 16 kolmekordne veerg, täidetud null, baitid sisendandmetest kaheksandas vormingus.

hexdump-b image.png

Seetõttu on ülaltoodud näide nüüd esindatud järgmiselt:

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

Ülalmainitud vorming on tuntud kui ühebaidiline kaheksand kuva.

Teine võimalus faili vaatamiseks on ühebaadise märgi kuva, kasutades minus c lülitit.

hexdump-c image.png

See näitab uuesti tasakaalu, kuid seekord järgneb kuueteistkümne eraldatud tühik, kolm veergu, sisendandmed iga rea ​​kohta.

Muud võimalused hõlmavad Canonical hex + ascii-ekraani, mida saab kuvada minus C-lüliti ja kahekohalise kümnendkohaga kuvari abil, mida saab kuvada miinus d-lülitiga. Negatiivset lülitit saab kasutada kahekohalise kaheksandiku kuvari kuvamiseks. Lõpuks saab minux x-lülitit kasutada kaheteistkümne kuueteistkümnenda kuva kuvamiseks.

hexdump-image.png

hexdump-d image.png

hexdump -o image.png

hexdump -x image.png

Kui ükski ülaltoodud vormingutest ei vasta teie vajadustele, kasutage formaati täpsustamiseks miinusmärki.

Kui teate, et andmefail on väga pikk ja soovite lihtsalt selle tüübi määramiseks näha esimesi märke, võite kasutada -n-lülitit, et määrata, kui palju faili kuvatakse hex-vormingus.

hexdump -n100 image.png

Ülalolev käsk kuvab esimesed sajad baiti.

Kui soovite osa failist vahele jätta, saate miinimumi lülitiga nihutada, et määrata nihe, et alustada.

hexdump -s10 image.png

Kui te ei anna failinime, tõlgendatakse teksti standardse sisendiga.

Sisestage lihtsalt järgmine käsk:

hexdump

Seejärel sisestage tekst standardseks sisendiks ja lõpetage, kui sisestasite väljumise. Hex kuvatakse standardväljundile.

Kokkuvõte

Hexdump-utiliit on ilmselt üsna võimas tööriist ja kindlasti peaksite lugema manuaalilehte, et kõik funktsioonid saaksid täielikult kokku puutuda.

Samuti peate väljundi lugemisel mõistma, mida otsite.

Manuaalse lehe vaatamiseks käivitage järgmine käsk:

mees hexdump