HEXDUMP(1) | Comenzi utilizator | HEXDUMP(1) |
NUME¶
hexdump - afișează conținutul fișierului în hexazecimal, zecimal, octal sau ascii
REZUMAT¶
hexdump opțiuni fișier ...
hd opțiuni fișier ...
DESCRIERE¶
Instrumentul hexdump este un filtru care afișează fișierele specificate, sau intrarea standard dacă nu sunt specificate fișiere, într-un format specificat de utilizator.
OPȚIUNI¶
Mai jos, argumentele lungime și decalaj pot fi urmate de sufixele multiplicative KiB (=1024), MiB (=1024*1024), și așa mai departe pentru GiB, TiB, PiB, EiB, ZiB și YiB („iB” este opțional, de exemplu, „K” are aceeași semnificație ca și „KiB”), sau sufixele KB (=1000), MB (=1000*1000) și așa mai departe pentru GB, TB, PB, EB, ZB și YB.
-b, --one-byte-octal
-X, --one-byte-hex
-c, --one-byte-char
-C, --canonical
-d, --two-bytes-decimal
-e, --format format_șir
-f, --format-file fișier
-L, --color[=când]
-n, --length lungime
-o, --two-bytes-octal
-s, --skip decalaj
-v, --no-squeezing
-x, --two-bytes-hex
-h, --help
-V, --version
Pentru fiecare fișier de intrare, hexdump copiază secvențial datele de intrare la ieșirea standard, transformând datele în conformitate cu șirurile de formate specificate prin opțiunile -e și -f, în ordinea în care au fost specificate.
FORMATE¶
Un șir de format conține un număr oarecare de unități de format, separate prin spații albe. O unitate de format conține până la trei elemente: un număr de iterații, un număr de octeți și un format.
Numărul de iterații este un număr întreg pozitiv opțional, care are valoarea implicită de unu. Fiecare format se aplică de câte ori se numără numărul de iterații.
Numărul de octeți este un număr întreg pozitiv opțional. Dacă este specificat, acesta definește numărul de octeți care trebuie interpretați de fiecare iterație a formatului.
Dacă se specifică un număr de iterații și/sau un număr de octeți, după numărul de iterații și/sau înainte de numărul de octeți trebuie să se plaseze o singură bară oblică inversată pentru a le distinge între ele. Orice spațiu alb înainte sau după bara oblică inversată este ignorat.
Formatul este obligatoriu și trebuie să fie înconjurat de ghilimele duble (" "). Acesta este interpretat ca un șir de format de tip fprintf (a se vedea fprintf(3)), cu următoarele excepții:
1.
2.
3.
4.
NULL | \0 |
<caracter de alertă(clopoțel)> | \a |
<retrocedare(backspace)> | \b |
<salt de pagină> | \f |
<linie nouă> | \n |
<retur de cărucior> | \r |
<tabulator> | \t |
<tabulator vertical> | \v |
Șiruri de conversie¶
Instrumentul hexdump acceptă, de asemenea, următoarele șiruri de conversie suplimentare.
_a[dox]
_A[dox]
_c
_p
_u
000 nul | 001 soh | 002 stx | 003 etx | 004 eot | 005 enq |
006 ack | 007 bel | 008 bs | 009 ht | 00A lf | 00B vt |
00C ff | 00D cr | 00E so | 00F si | 010 dle | 011 dc1 |
012 dc2 | 013 dc3 | 014 dc4 | 015 nak | 016 syn | 017 etb |
018 can | 019 em | 01A sub | 01B esc | 01C fs | 01D gs |
01E rs | 01F us | 0FF del |
Culori¶
Atunci când este pus la sfârșitul unui specificator de format, hexdump evidențiază șirul respectiv cu culoarea specificată. Condițiile, dacă sunt prezente, sunt evaluate înainte de evidențiere.
_L[unitate_culoare_1,unitate_culoare_2,...,unitate_culoare_n]
Sintaxa completă a unei unități de culoare este următoarea:
[!]CULOARE[:VALOARE][@POZIȚIA_INIȚIALĂ[-FINALĂ]]
!
CULOARE
VALOARE
POZIȚIE
Contorizare¶
Numerele de octeți implicite și acceptate pentru caracterele de conversie sunt următoarele:
%_c, %_p, %_u, %c
%d, %i, %o, %u, %X, %x
%E, %e, %f, %G, %g
Cantitatea de date interpretată de fiecare șir de format este suma datelor solicitate de fiecare unitate de format, care este egală cu numărul de iterații înmulțit cu numărul de octeți sau cu numărul de iterații înmulțit cu numărul de octeți solicitați de format, în cazul în care numărul de octeți nu este specificat.
Datele de intrare sunt manipulate în blocuri, unde un bloc este definit ca fiind cea mai mare cantitate de date specificată de orice șir de format. Șirurile de format care interpretează mai puțin de un bloc de date de intrare, a căror ultimă unitate de format interpretează un anumit număr de octeți și nu are un număr de iterații specificat, numărul de iterații este mărit până când întregul bloc de intrare este procesat sau până când nu mai există suficiente date în bloc pentru a satisface șirul de format.
În cazul în care, fie ca urmare a specificației utilizatorului, fie ca urmare a modificării de către hexdump a numărului de iterații, așa cum este descris mai sus, numărul de iterații este mai mare de unu, nu se afișează niciun caracter de spațiere la final în timpul ultimei iterații.
Este o eroare să se specifice un număr de octeți, precum și mai multe caractere sau șiruri de caractere de conversie, cu excepția cazului în care toate caracterele sau șirurile de caractere de conversie, cu excepția unuia, sunt _a sau _A.
În cazul în care, ca urmare a specificării opțiunii -n sau a faptului că s-a ajuns la sfârșitul fișierului, datele de intrare satisfac doar parțial un șir de format, blocul de intrare este completat cu zerouri suficient pentru a afișa toate datele disponibile (adică orice unitate de format care se suprapune peste sfârșitul datelor va afișa un anumit număr de octeți zero).
Rezultatele ulterioare ale unor astfel de șiruri de formate sunt înlocuite cu un număr echivalent de spații. Un număr echivalent de spații este definit ca fiind numărul de spații generate de un caracter de conversie s cu aceeași lățime de câmp și precizie ca și caracterul de conversie sau șirul de conversie original, dar fără caracterele de marcare a conversiei „+”, „ ”, „#”, și care face trimitere la un șir NULL.
Dacă nu se specifică șiruri de formate, afișarea implicită este foarte asemănătoare cu formatul de ieșire -x (opțiunea -x face ca între unitățile de format să fie folosit mai mult spațiu decât în ieșirea implicită).
STARE DE IEȘIRE¶
hexdump iese cu 0 în caz de succes și > 0 dacă a apărut o eroare.
ÎN CONFORMITATE CU¶
Se așteaptă ca instrumentul hexdump să fie compatibil cu IEEE Std 1003.2 („POSIX.2”).
EXEMPLE¶
Afișează datele introduse în format de examinare:
"%06.6_ao " 12/1 "%3_u "
"\t" "%_p "
"\n"
Implementarea opțiunii -x:
"%07.7_Ax\n"
"%07.7_ax " 8/2 "%04x " "\n"
Exemplu de semnătură de pornire MBR: Se evidențiază adresele cu cian și octeții de la pozițiile 510 și 511 cu verde dacă valoarea lor este 0xAA55, iar în caz contrar cu roșu.
"%07.7_Ax_L[cyan]\n"
"%07.7_ax_L[cyan] " 8/2 " %04x_L[green:0xAA55@510-511,!red:0xAA55@510-511] " "\n"
CULORI¶
Colorarea ieșirii este implementată de funcționalitatea terminal-colors.d(5). Colorarea implicită poate fi dezactivată printr-un fișier gol
/etc/terminal-colors.d/hexdump.disable
pentru comanda hexdump sau pentru toate instrumentele (comenzile) prin
/etc/terminal-colors.d/disable
Configurația specifică utilizatorului $XDG_CONFIG_HOME/terminal-colors.d sau $HOME/.config/terminal-colors.d prevalează asupra celei globale.
Rețineți că colorarea ieșirii poate fi activată în mod implicit și, în acest caz, directoarele terminal-colors.d nu trebuie să existe încă.
RAPORTAREA ERORILOR¶
Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor la <https://github.com/util-linux/util-linux/issues>.
DISPONIBILITATE¶
Comanda hexdump face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
2025-01-14 | util-linux 2.40.4 |