Skip to content

hexdump – Linux-opdracht – Unix-opdracht

25 de juli de 2021
GettyImages sb10064100am 001 57ed9d945f9b586c353e2035

De hexdump Linux-hulpprogramma geeft de opgegeven bestanden weer – of de standaardinvoer, als er geen bestanden zijn opgegeven – in een door de gebruiker gespecificeerd formaat.

Korte inhoud

De opdracht heeft de volgende structuur: hexdump [-bcCdovx ] -woorden [-e format_string ] -woorden [-f format_file ] -woorden [-n length ] -woorden [-sskip ] het dossier …

Opdrachtopties

De opdracht accepteert verschillende schakelaars die het gedrag wijzigen:

  • -B: Geef de invoeroffset weer in hexadecimaal, gevolgd door zestien door spaties gescheiden, drie kolommen, met nul gevulde bytes aan invoergegevens, in octaal, per regel.
  • -C: Geef de invoeroffset weer in hexadecimaal, gevolgd door zestien door spaties gescheiden, drie kolommen, met spaties gevulde, tekens van invoergegevens per regel.
  • -C: Geef de invoeroffset weer in hexadecimaal, gevolgd door zestien door spaties gescheiden, hexadecimale bytes met twee kolommen, gevolgd door dezelfde zestien bytes in %_p-formaat ingesloten in buizen.
  • -NS: Geef de invoeroffset weer in hexadecimaal, gevolgd door acht door spaties gescheiden, vijf kolommen, nulgevulde, twee-byte-eenheden van invoergegevens, in niet-ondertekende decimaal, per regel.
  • -e format_string: geef een opmaakreeks op die moet worden gebruikt voor het weergeven van gegevens.
  • -F format_file: geef een bestand op dat een of meer door nieuwe regels gescheiden opmaaktekenreeksen bevat. Lege regels en regels waarvan het eerste niet-lege teken een hekje is, worden genegeerd.
  • -N lengte: Alleen interpreteren lengte bytes invoer.
  • -O: Geef de invoeroffset weer in hexadecimaal, gevolgd door acht door spaties gescheiden, zes kolommen, nul gevulde, twee-byte hoeveelheden invoergegevens, in octaal, per regel.
  • -s offset: Overslaan offset bytes vanaf het begin van de invoer. Standaard, offset wordt geïnterpreteerd als een decimaal getal. Met een leidende 0x of 0X offset wordt geïnterpreteerd als een hexadecimaal getal, anders met een leidende 0 offset wordt geïnterpreteerd als een octaal getal. Het karakter toevoegen B k of m tot offset zorgt ervoor dat het wordt geïnterpreteerd als een veelvoud van 512, 1024, of 1048576, respectievelijk.
  • -v: De –v optie zorgt ervoor dat hexdump alle invoergegevens weergeeft. Zonder de -v optie, wordt een willekeurig aantal groepen uitvoerlijnen, die identiek zouden zijn aan de onmiddellijk voorafgaande groep uitvoerlijnen (behalve de invoeroffsets), vervangen door een lijn die uit een enkel sterretje bestaat.
  • -x: Geef de invoeroffset weer in hexadecimaal, gevolgd door acht, door spaties gescheiden, vier kolommen, nul gevulde, twee-byte hoeveelheden invoergegevens, in hexadecimaal, per regel.

Kopieer voor elk invoerbestand de invoer opeenvolgend naar de standaarduitvoer, waarbij de gegevens worden getransformeerd volgens de formaatreeksen die zijn gespecificeerd door de –e en –F opties, in de volgorde waarin ze zijn opgegeven.

formaten

Een opmaakreeks bevat een willekeurig aantal opmaakeenheden, gescheiden door witruimte. Een formaateenheid bevat maximaal drie items: een iteratietelling, een bytetelling en een indeling. Het aantal herhalingen is een optioneel positief geheel getal, dat standaard op één staat. Elk formaat wordt toegepast op iteratietellingstijden. Het aantal bytes is een optioneel positief geheel getal. Indien gespecificeerd, definieert het het aantal bytes dat moet worden geïnterpreteerd door elke iteratie van het formaat. Als een iteratietelling of een bytetelling is opgegeven, moet een enkele schuine streep worden geplaatst na de iteratietelling en vóór de bytetelling om ze ondubbelzinnig te maken. Elke witruimte voor of na de schuine streep wordt genegeerd. Het formaat is verplicht en moet tussen dubbele aanhalingstekens staan. Het wordt geïnterpreteerd als een tekenreeks in fprintf-stijl, met de volgende uitzonderingen:

  • Een asterisk mag niet worden gebruikt als veldbreedte of precisie.
  • Een bytetelling of veldprecisie is vereist voor elk s conversieteken—in tegenstelling tot de fprintf-standaard, die de hele tekenreeks afdrukt als de precisie niet gespecificeerd is.
  • De conversietekens H, ik, N, P, en Q worden niet ondersteund.
  • De escape-reeksen van één teken die in de C-standaard worden beschreven, worden ondersteund:
    • :
    • : a
    • : b
    • : f
    • : n
    • : r
    • : t
    • : v

Hexdump ondersteunt ook extra conversiestrings. Raadpleeg de manpagina voor: hexdump voor specifieke gebruiksnotities.