Provided by: manpages-pl_20051117-1_all bug

NAZWA

     hexdump - zrzut ascii, dziesiętny, szesnastkowy, ósemkowy

SKŁADNIA

     hexdump [-bcdovx] [-e napis_formatu] [-f plik_formatu] [-n dugo]
     [-s pomi] plik ...

OPIS

     Narzędzie hexdump jest filtrem, który wyświetla podane pliki, lub
     standardowe wejście, jeśli nie podano plików, używając do tego celu
     podanego przez użytkownika formatu.

     Opcje są następujące

     -b          Jednobajtowe wywietlanie semkowe.  Wyświetl szesnastkowo
                 offset wejściowy, a za nim szesnaście, trójkolumnowych,
                 oddzielonych spacjami, wypełnionych zerami bajtów wejściowych
                 w formacie ósemkowym.

     -c          Jednobajtowe wywietlanie znakowe.  Wyświetl szesnastkowo
                 offset wejściowy, a za nim szesnaście, trójkolumnowych,
                 oddzielonych spacjami bajtów w formacie ascii.

     -d          Dwubajtowe wywietlanie dziesitne. Wyświetl szesnastkowo
                 offset wejściowy, a za nim osiem, pięciokolumnowych,
                 oddzielonych spacjami, wypełnionych zerami jednostek
                 dwubajtowych, zawierających dane wejściowe, w formacie
                 dziesiętnym.

     -e napis_formatu
                 Podaje napis formatujący, którego użyć do wyświetlania
                 danych.

     -f plik_formatu
                 Podaje plik, który zawiera jeden, lub więcej, oddzielonych
                 nową linią napisów formatujących. Puste linie, oraz linie
                 zaczynające się od krzyżyka (#) są ignorowane.

     -n dugo  Interpretuj tylko dugo bajtów wejścia.

     -o          Dwubajtowe wywietlanie semkowe.  Wyświetl szesnastkowo
                 offset wejściowy, a za nim osiem szeciokolumnowych,
                 oddzielonych spacjami, wypełnionych zerami, dwubajtowych
                 fragmentów danych wejściowych, w formacie ósemkowym.

     -s offset   Pomiń offset bajtów, licząc od początku wejścia.  Domyślnie
                 offset jest interpretowany jako liczba dziesiętna.  Po
                 poprzedzeniu go przedrostkiem 0x lub 0X, jest interpretowany
                 jako liczba szesnastkowa, a jeśli jest poprzedzony
                 prowadzącym 0, to jest interpretowany jako liczba ósemkowa.
                 Dołączenie do offsetu znaku b, k, lub m powoduje, że jest on
                 interpretowany jako wielokrotność odpowiednio 512, 1024, lub
                 1048576.

     -v          Opcja -v Powoduje wyświetlenie zrzutu wszystkich danych
                 wejściowych.  Bez opcji -v, dowolna liczba grup linii
                 wyjściowych, która będzie identyczna z bezpośrednio
                 poprzedzającą grupą linii (poza offsetami wejściowymi),
                 będzie zamieniana linią z gwiazdką.

     -x          Dwubajtowe wywietlanie szesnastkowe.  Wyświetl szesnastkowo
                 offset wejściowy, a za nim osiem, oddzielonych spacjami,
                 czterokolumnowych, wypełnionych zerami, dwubajtowych
                 fragmentów danych wejściowych, w formacie szesnastkowym.

     Dla każdego pliku wejściowego hexdump kopiuje dane wejściowe na
     standardowe wyjście, przekształcając dane według napisów formatujących,
     podanych w opcjach -e i -f, w wypadku gdy były one podane.

   Formaty
     Napis formatujący składa się z dowolnej ilości jednostek formatujących,
     oddzielonych białą spacją.  Jednostka formatująca składa się z
     maksymalnie trzech elementów: licznika iteracji, licznika bajtów i
     formatu.

     Licznik iteracji jest opcjonalną dodatnią liczbą całkowitą, której
     wartość domyślna to jeden.  Każdy format jest załączany tyle razy, ile
     wskazano w liczniku iteracji.

     Licznik bajtów jest opcjonalną dodatnią liczbą całkowitą. Jeśli zostanie
     podana, to definiuje liczbę bajtów, które należy zinterpretować w każdej
     iteracji formatu.

     Jeśli podano licznik iteracji i/lub bajtów, to po liczniku iteracji i/lub
     przed licznikiem bajtów trzeba umieścić ukośnik, aby móc je rozróżnić.
     Białe spacje przed ukośnikiem są ignorowane.

     Format jest częścią wymaganą i musi być ujęty w podwójne cudzysłowy ("
     ").  Jest on interpretowany jak napis formatujący fprintf (zobacz
     fprintf(3)), lecz z następującymi wyjątkami:

           +o   Gwiazdka (*) nie może być używana do określania precyzji, lub
               szerokości pola.

           +o   Liczba bajtów, lub dokładność pola jest wymagana dla każdego
               znaku konwersji ``s'' (w przeciwieństwie do fprintf(3) gdzie
               domyślnie, bez podanej precyzji, drukowany jest cały napis).

           +o   Znaki konwersji ``h'', ``l'', ``n'', ``p'' i ``q'' nie są
               obsługiwane.

           +o   Obsługiwane są następujące sekwencje eskejpowe pojedynczych
               znaków, opisane w standardzie C:

                     NUL                  \0
                     <alert character>    \a
                     <backspace>          \b
                     <form-feed>          \f
                     <newline>            \n
                     <carriage return>    \r
                     <tab>                \t
                     <vertical tab>       \v

     Hexdump obsługuje również następujące dodatkowe napisy konwersji:

     _a[dox]     Wyświetl offset wejściowy, kumulujący się na przestrzeni
                 plików wejściowych, wskazujący następny wyświetlany bajt.
                 Dodane znaki d, o, i x wskazują format wyświetlenia jako
                 dziesiętny, ósemkowy, lub szesnastkowy.

     _A[dox]     Identyczne z napisem konwersji _a z tą tylko różnicą, że jest
                 dokonywane tylko raz, po przetworzeniu wszystkich danych
                 wejściowych.

     _c          Drukuj znaki z domyślnego zestawu znaków.  Niedrukowalne
                 znaki są wyświetlane w trójznakowych, wypełnionych zerami
                 sekwencjach ósemkowych, poza tymi, które są reprezentowane
                 standardową notacją eskejpową (patrz wyżej), które są
                 wyświetlane jako napisy znakowe.

     _p          Drukuj znaki z domyślnego zestawu znaków. Niedrukowane znaki
                 są wyświetlane jako pojedyncza kropka ``.''.

     _u          Wyświetlaj znaki US-ASCII, z wyjątkiem znaków sterujących,
                 które są wyświetlane w następujących określeniach.  Znaki
                 większe niż 0xff, są wyświetlane jako napisy szesnastkowe.

                 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

     Domyślne i wspierane liczniki bajtów dla znaków konwersji są następujące:

           %_c, %_p, %_u, %c       Tylko liczniki jednobajtowe.

           %u, %X, %x'                        Domyślnie cztery bajty,
                                   wspierane są też liczniki jedno i
                                   dwubajtowe.

           %G, %g' %f,                    Domyślnie osiem bajtów, wspierane są
                                   też liczniki czterobajtowe.

     Ilość danych, interpretowanych przez każdy napis formatujący jest sumą
     danych wymaganych przez każdą jednostką formatującą, która jest obliczana
     jako iteracja razy licznik bajtów.

     Wejście jest obsługiwane w ``blokach'', gdzie blok jest zdefiniowany jako
     największa porcja danych, podanych przez dowolny z napisów formatujących.
     Napisy formatujące, które interpretują mniej danych niż zawartych jest w
     bloku wejściowym, w którym ostatnia jednostka formatująca interpretuje
     pewną liczbę bajtów i nie ma ustawionego określonwego licznka iteracji,
     mają zwiększany licznik iteracji, aż cały blok nie zostanie przetworzony,
     lub aż zabraknie danych do zadowolenia napisu formatującego.

     Jeśli w wyniku specyfikacji użytkownika, lub modyfikacji licznika
     iteracji przez hexdump, licznik iteracji jest większy niż jeden, to
     podczas ostatniej iteracji nie są wyświetlane końcowe białe spacje.

     Błędem jest podawanie licznika bajtów razem z wieloma znakami/napisami
     konwersji, chyba że wszystkie poza jednym znakiem/napisem konwersji są _a
     lub _A.

     Jeśli w wyniku podania opcji -n osiągnięty zostanie EOF, dane wejściowe
     zadowolą napis formatujący tylko częściowo, blok wejściowy jest
     wypełniony zerami, wystarczająco aby wyświetlić wszystkie dostępne dane
     (np. wszystkie jednostki formatujące, zachodzące za koniec danych będą
     wyświetlały jakąś liczbę bajtów zera).

     Dalsze wyjście takich napisów formatujących jest zamieniane odpowiadającą
     ilością spacji. Odpowiadająca ilość spacji jest zdefiniowana jako liczba
     wyjścia spacji przez znak konwersji s z tym samym polem i precyzją co
     oryginalny znak konwersji, lub napis konwersji, lecz z usuniętymi
     wszelkimi znakami flag ``+'', `` '', ``#'' i wskazującym na napis NULL.

     Jeśli nie podano napisów formatujących, domyślne wyświetlanie jest
     równoważne podaniu opcji -x.

     hexdump kończy działanie z kodem zera po sukcesie i większym od zera po
     błędzie.

PRZYKŁADY

     Wyświetl wyjście w przestudiowanym formacie:

           "%06.6_ao "  12/1 "%3_u "
           "\t\t" "%_p "
           "\n"

     Implementuj opcję -x:

           "%07.7_Ax\n"
           "%07.7_ax  " 8/2 "%04x " "\n"

ZOBACZ TAKŻE

     adb(1)