Kif Toħloq Hexdump Ta 'Fajl Jew String ta' Test

Introduzzjoni

Id-dump hex huwa vista hexadeċimali tad-data. Inti tista 'tixtieq tuża hexadecimal meta tiddisweb programm jew biex ireġġa' lura inġinier ta 'programm.

Pereżempju, bosta formati ta 'fajls għandhom karattri speċifiċi ta' hex biex jindikaw it-tip tagħhom. Jekk qed tipprova taqra fajl bl-użu ta 'programm u għal xi raġuni ma tkunx qed titgħabba b'mod korrett, jista' jkun li l-fajl ma jkunx fil-format li qed tistenna.

Jekk trid tara kif taħdem il-programm u m'għandekx il-kodiċi tas-sors jew biċċa ta 'softwer li tħaddem il-kodiċi, tista' tħares lejn il-ħanqid hex biex tipprova taħdem dak li qed jiġri.

X'inhu Hexadecimal?

Kompjuters jaħsbu f'binarju . Kull karattru, numru u simbolu huma referenzjati minn valuri binarji jew multipli binarji.

Il-bnedmin, madankollu, għandhom it-tendenza li jaħsbu f'de deċimali.

Eluf Mijiet Tens Unitajiet
1 0 1 1

Bħala bnedmin, in-numri l-aktar baxxi tagħna jissejħu unitajiet u jirrappreżentaw in-numri minn 0 sa 9. Meta niġu għal 10 aħna niddeċiedu mill-ġdid il-kolonna unitajiet lura għal 0 u żid 1 mal-kolonna ta 'l-għexieren (10).

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

Fil-binarju, l-iktar numru baxx jirrappreżenta biss 0 u 1. Meta nikbru l-aħħar 1 npoġġu 1 fil-kolonna 2 u 0 fil-kolonna 1. Meta trid tirrappreżenta 4 inti tpoġġi 1 fil-kolonna 4 u reset il-kolonna 2 u 1.

Għalhekk biex tirrappreżenta 15 inti jkollok 1111 li tirrappreżenta 1 tmienja, 1 erbgħa, 1 tnejn u waħda waħda. (8 + 4 + 2 + 1 = 15).

Jekk rajna fajl tad-data f'format binarju, ikun assolutament enormi u prattikament impossibbli li wieħed jagħmel sens.

Il-pass li jmiss mill-binarju huwa octal, li juża 8 bħala n-numru bażi.

24 16 8 1
0 1 1 0

F'sistema octal l-ewwel kolonna tmur minn 0 sa 7, it-tieni kolonna hija 8 sa 15, it-tielet kolonna 16 sa 23 u r-raba 'kolonna 24 sa 31 u l-bqija. Filwaqt li ġeneralment aktar faċli biex tinqara minn binarju, ħafna nies jippreferu jużaw hexadeċimali.

L-użi hexadeċimali 16 bħala n-numru bażi. Issa dan huwa fejn toħloq konfużjoni għax bħala bnedmin naħsbu n-numri minn 0 sa 9.

Allura dak li jintuża għal 10, 11, 12, 13, 14, 15? It-tweġiba hija ittri.

Il-valur 100 huwa għalhekk rappreżentat minn 64. Int ser ikollok bżonn 6 tal-kolonna 16s li ġġib 96 u mbagħad 4 fil-kolonna unitajiet li jagħmlu 100.

Il-karattri kollha f'fajl se jiġu indikati b'valur ta 'hexadecimal. Dak li jfisser dawn il-valuri jiddependu mill-format tal-fajl innifsu. Il-format tal-fajl huwa indikat mill-valuri hexadeċimali li ġeneralment ikunu maħżuna fil-bidu tal-fajl.

Bl-għarfien tas-sekwenza ta 'valuri hexadeċimali li jidhru fil-bidu tal-fajls, tista' manwalment tfassal liema format huwa l-fajl. Meta tara fajl f'qoxra hex tista 'tgħinek issib karattri moħbija li ma jintwerewx meta l-fajl huwa mgħobbija f'edukatur normali tat-test.

Kif Toħloq Hex Dump Permezz ta 'Linux

Biex toħloq hex dump bl-użu ta 'Linux uża l-kmand tal-hex-dump.

Biex jintwerew fajl bħala hex fit -terminal (produzzjoni standard) imexxu l-kmand li ġej:

isem tal-fajl hexdump

Pereżempju

hexdump image.png

L-output awtomatiku juri n-numru tal-linja (f'format hexadeċimali) u mbagħad 8 settijiet ta '4 valuri hexadeċimali għal kull linja.

Pereżempju:

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

Tista 'tforni swiċċijiet differenti biex tibdel il-produzzjoni default. Per eżempju, li tispeċifika l-iswiċċ minus b ser jipproduċi offset ta '8 ċifri segwit minn 16 tliet kolonni, żero mimlija, bytes tad-data tal-input f'format octal.

hexdump -b image.png

Għalhekk l-eżempju ta 'hawn fuq issa se jkun irrappreżentat kif ġej:

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

Il-format t'hawn fuq huwa magħruf bħala wirja ta 'one-byte octal.

Mod ieħor biex tara l-fajl huwa f'wirja ta 'karattri b'byte wieħed bl-użu tal-buttun li jnaqqas in-numru c.

hexdump -c image.png

Dan għal darb'oħra juri t-tpaċija iżda din id-darba segwit minn sittax-il spazju separati, tliet kolonni, karattri mimlija spazjali ta 'dejta ta' input għal kull linja.

Għażliet oħra jinkludu l-iskrin Canonical hex + ascii li jista 'jintwera bl-użu tas-swiċċ C minus u l-wiri deċimali b'żewġ bytes li jista' jintwera bl-użu tal-buttun minus d. L-iswiċċ tan-nieqes jista 'jintuża biex juri wirja b'żewġ byte octal. Finalment il-minux x swiċċ jista 'jintuża biex juri wiri b'hexadecimal b'żewġ bytes.

hexdump -C image.png

hexdump -d image.png

hexdump -o image.png

hexdump -x image.png

Jekk l-ebda wieħed mill-formati ta 'hawn fuq ma jaqbel mal-ħtiġijiet tiegħek biex tuża l-buttuna minus e biex tispeċifika l-format.

Jekk taf li fajl tad-data huwa twil ħafna u inti biss trid tara l-ewwel ftit karattri biex tiddetermina t-tip tagħha tista 'tuża s-swiċċ -n biex tispeċifika kemm tal-fajl li juri f'hex.

hexdump -n100 image.png

Il-kmand ta 'hawn fuq juri l-ewwel mitt byte.

Jekk tixtieq taqbeż porzjon tal-fajl tista 'tuża l-iswiċċ tan-nieqes biex tiffissa l-kumpens biex tibda minnha.

hexdump -s10 image.png

Jekk ma tagħtix isem tal-fajl it-test jinqara mill-input standard.

Sempliċement ikteb il-kmand li ġej:

hexdump

Imbagħad daħħal it-test fl-input standard u finta billi ttajpja tieqaf. L-hex se jintwera għall-output standard.

Sinteżi

L-utilità tal-hexdump hija ovvjament għodda b'saħħitha u inti għandek taqra l-paġna tal-manwal b'mod sħiħ biex tilħaq il-karatteristiċi kollha.

Int tkun teħtieġ ukoll fehim tajjeb ta 'dak li qed tfittex meta taqra l-output.

Biex tara l-paġna tal-manwal imexxu l-kmand li ġej:

bniedem hexdump