Itt van egy valós példa, ahol a hexdump hasznos lehet. Ha bináris adatokkal dolgozik, ezt nagyon nehéz megérteni. Az egyszerűség kedvéért gyorsan átalakíthatja a bináris adatokat hexadecimálissá vagy tizedessé.
Ebben az útmutatóban olvassa el a hexdump parancs használatát Linux alatt.
Hexdump Linux alatt
A Hexdump egy egyszerű, mégis hasznos program, amely C nyelven íródott. Éppen ezért a professzionális C programozók könnyen használhatják. Ha azonban még nem jártas a C programozásban, akkor is felhasználhatja a hexdump-ot a céljára.
A Hexdump előre telepítve van bármely Linux disztróba. Ebben az útmutatóban bemutatás céljából az Ubuntut fogom használni.
Hexdump használat
A hexdump használatának bemutatásához létrehoztam egy minta szöveges fájl dummyt.txt.
$ macska bábu.txt
Ezt a fájlt továbbítjuk a hexdump-nak, hogy tartalmát különféle kimeneti formátumokká alakítsuk át.
Egy bájtos oktális kijelző
A következő hexdump parancs a bemeneti adatokat hexadecimális formátumban nyomtatja ki. A kimenetben minden sor 16 szóközzel elválasztott bemeneti adat bájtot tartalmaz, mindegyik 3 oszlopos és nulla kitöltött, oktális.
$ hexdump -b
Egy bájtos karakter megjelenítése
A következő hexdump parancs a bemeneti adatokat hexadecimális formátumban jeleníti meg. A kimenetben minden sor 16 szóközzel elválasztott karaktert tartalmaz a bemeneti adatokból, mindegyiknek 3 oszlopa van és szóköz van kitöltve.
$ hexdump -c
Canonical hex + ASCII kijelző
A következő hexdump parancs a bemeneti adatokat hexadecimális formában jeleníti meg. A kimenetben minden sor 16 szóközzel elválasztott hexadecimális bájtot tartalmaz, mindegyiknek 2 oszlopa van. A következő tartalom megegyezik a bájtokkal % _p „|” formátumú formátum karakterek.
$ hexdump -C
Két bájtos decimális kijelző
A következő hexdump parancs a bemeneti adatokat hexadecimális formátumban jeleníti meg. A kimenetben minden sor 8 szóközzel elválasztott, 2 bájt egységnyi bemeneti adatot tartalmaz, mindegyiknek 5 oszlopa van és nulla kitöltetlen, tizedesjegy nélkül.
$ hexdump -d
Két bájtos oktális kijelző
A következő hexdump parancs a bemeneti adatokat hexadecimális formátumban nyomtatja ki. A kimenetben minden sor 8 szóközzel elválasztott 2 bájt bemeneti adatot tartalmaz, mindegyik 6 oszloppal és nulla kitöltéssel, nyolcban.
$ hexdump -o
Két bájtos hexadecimális megjelenítés
A következő hexdump parancs a bemeneti adatokat hexadecimális formátumban nyomtatja ki. A kimenetben minden sor 8 szóközzel elválasztott 2 bájt bemeneti adatot tartalmaz, mindegyikben 4 oszlop és nulla kitöltés, hexadecimálisan.
$ hexdump -x
Az összes bemenet megjelenítése
A hexdump használata esetén az ismételt sorok tartalma egyetlen csillaggal helyettesíthető. Ha a hexdump-ot rá akarja kényszeríteni az összes tartalom kiadására, akkor használja a „-v” jelzőt.
$ macska bábu.txt$ hexdump -b dummy.txt
$ hexdump -v -b
Korlátozza a bájtok számát
A Hexdump támogatja azt a lehetőséget, hogy meghatározott számú bájtot döntsön egy fájlból a hexdump-ba. Az összeg megadásához használja az „-s” jelzőt, majd a bájt összeget.
$ hexdump -s 2 -c
Végső gondolat
Az itt bemutatott példák többnyire a hexdump-ot használják. A hexdumpról szóló teljes információért a man oldal az egyik legjobb forrás.
$ man hexdump
A Hexdump hatékony eszköz, ha tudja, mikor és hogyan kell használni. Hibakereséskor azonban nem mindig az eszközök jelentenek választ. Nézze meg, hogyan lehet hibakeresni egy bash szkriptet. Ha a NodeJS-hez jár, akkor nézze meg, hogyan kell használni a NodeJS hibakeresőt.
Élvezd!