Příkazy pro Linux

Jak používat příkaz hexdump v systému Linux?

Jak používat příkaz hexdump v systému Linux?
Hexdump je výkonný nástroj v systémech Linux, který většinou používají vývojáři a debuggery aplikací. Může převádět vstupní soubory a data do příjemného a čitelného formátu.

Zde je příklad ze skutečného života, kde může být hexdump užitečný. Pokud pracujete s binárními daty, bude to velmi obtížné pochopit. Pro usnadnění můžete binární data rychle změnit na hexadecimální nebo desítková.

V této příručce se podívejte, jak používat příkaz hexdump v systému Linux.

Hexdump v Linuxu

Hexdump je jednoduchý, ale užitečný program napsaný v jazyce C. Proto může být pro profesionální programátory C jeho použití snadné. I když však nemáte zkušenosti s programováním v jazyce C, stále můžete pro svůj účel použít hexdump.

Hexdump je předinstalován v jakékoli linuxové distribuci. V této příručce budu pro demonstrační účely používat Ubuntu.

Využití Hexdump

Pro demonstraci použití hexdump jsem vytvořil ukázkový textový soubor figuríny.txt.

$ kočičí figurína.txt

Tento soubor předáme hexdumpu, abychom převedli jeho obsah do různých formátů výstupu.

Osmibajtový osmičkový displej

Následující příkaz hexdump vytiskne vstupní data v hexadecimálním formátu. Na výstupu obsahuje každý řádek 16 mezerově oddělených bajtů vstupních dat, z nichž každý má 3 sloupce a je vyplněn nulou, v osmičkovém formátu.

$ hexdump -b

Zobrazení jednobajtových znaků

Následující příkaz hexdump zobrazí vstupní data v hexadecimálním formátu. Na výstupu obsahuje každý řádek 16 znaků oddělených mezerami vstupních dat, přičemž každý má 3 sloupce a je vyplněn mezerou.

$ hexdump -c

Kanonický hexadecimální + ASCII displej

Následující příkaz hexdump zobrazí vstupní data v hexadecimálním formátu. Na výstupu obsahuje každý řádek 16 hexadecimálních bajtů oddělených mezerami, z nichž každý má 2 sloupce. Následující obsah bude mít stejné bajty % _p formát uzavřený v „|“ postavy.

$ hexdump -C

Dvoubajtové desetinné zobrazení

Následující příkaz hexdump zobrazí vstupní data v hexadecimálním formátu. Ve výstupu obsahuje každý řádek 8 mezerami oddělených 2 bajtových jednotek vstupních dat, z nichž každý má 5 sloupců a je vyplněn nulou, v desetinném znaku bez znaménka.

$ hexdump -d

Dvoubajtový osmičkový displej

Následující příkaz hexdump vytiskne vstupní data v hexadecimálním formátu. Na výstupu obsahuje každý řádek 8 mezerami oddělených 2 bajtů vstupních dat, každý se 6 sloupci a nulovým vyplněním, v osmičkovém formátu.

$ hexdump -o

Dvoubajtové hexadecimální zobrazení

Následující příkaz hexdump vytiskne vstupní data v hexadecimálním formátu. Ve výstupu obsahuje každý řádek 8 mezerami oddělených 2 bajtů vstupních dat, každý se 4 sloupci a nulovým vyplněním, v šestnáctkové soustavě.

$ hexdump -x

Zobrazit všechny vstupy

Při použití hexdump nahradí obsah opakovaných řádků jednou hvězdičkou. Pokud chcete vynutit hexdump, aby vydal veškerý obsah, použijte příznak „-v“.

$ kočičí figurína.txt

$ hexdump -b figurína.txt

$ hexdump -v -b

Omezit počet bajtů

Hexdump podporuje možnost rozhodování o konkrétním počtu bajtů ze souboru na hexdump. Chcete-li určit částku, použijte příznak „-s“ následovaný velikostí bajtu.

$ hexdump -s 2 -c

Poslední myšlenka

Zde ukázané příklady jsou způsoby, kterými budete většinou používat hexdump. Chcete-li získat úplné informace o hexdumpu, je manuálová stránka jedním z nejlepších zdrojů.

$ man hexdump

Hexdump je mocný nástroj, pokud víte, kdy a jak jej použít. Nástroje však nejsou vždy odpovědí, pokud jde o ladění. Podívejte se, jak ladit bash skript. Pokud jste v NodeJS, podívejte se, jak používat debugger NodeJS.

Užívat si!

Hry Top 5 karet pro zachycení hry
Top 5 karet pro zachycení hry
Všichni jsme viděli a milovali streamování her na YouTube. PewDiePie, Jakesepticye a Markiplier jsou jen někteří z nejlepších hráčů, kteří vydělali mi...
Hry Jak vyvíjet hru na Linuxu
Jak vyvíjet hru na Linuxu
Před deseti lety by jen málo uživatelů Linuxu předpovídalo, že jejich oblíbený operační systém bude jednoho dne populární herní platformou pro komerčn...
Hry Porty komerčních her s otevřeným zdrojovým kódem
Porty komerčních her s otevřeným zdrojovým kódem
Zdarma, s otevřeným zdrojovým kódem a multiplatformní herní enginy lze hrát staré i některé z poměrně nedávných herních titulů. Tento článek uvede sez...