Hexdump - Linuxコマンド - Unixコマンド

hexdump - ascii、10進、16進、8進ダンプ

シノプシス

[ - bcCdovx ] - ワード [ - e フォーマット_文字 ] - ワード[ - f フォーマット_ファイル ] - ワード[ - n 長さ ] - ワード[ スキップ ] ファイル...

説明

hexdumpユーティリティは、指定されたファイル、またはファイルが指定されていない場合は標準入力をユーザ指定の形式で表示するフィルタです。

オプションは次のとおりです。

-b

1バイトの8進数の表示入力オフセットを16進数で表示し、スペースで区切られた3つの列、0で充填された入力データのバイトを1行ごとに8進数で表示します。

-c

1バイト文字表示入力オフセットを16進数で表示し、1行に入力データのスペース区切り、3列、スペースで区切った16 文字を続けて表示します。

-C

正規の16進+ ASCII表示入力オフセットを16進数で表示し、スペースで区切られた16個の2桁の16進数のバイトと、それに続く `_ '文字で囲まれた%_p形式の16バイトを表示します。

-d

2バイト小数表示入力オフセットを16進数で表示し、スペースで区切られた5つの列、ゼロ充填、2バイト単位の入力データを、符号なし10進数で1行に続けて表示します。

-e format_string

データの表示に使用する書式文字列を指定します。

-f format_file

1つ以上の改行で区切られた書式文字列を含むファイルを指定します。 空白行と最初の空白以外の文字がハッシュマーク( は無視されます)。

-n 長さ

入力の長さバイトだけを解釈します。

-o

2バイトの8進数の表示入力オフセットを16進数で表示し、スペースで区切られた6つの列、0で充填された2バイトの量の入力データを8進数で1行に続けて表示します。

-s offset

入力の先頭からオフセットバイトをスキップします。 デフォルトでは、 offsetは10進数として解釈されます。 先行する0xまたは0X オフセットは16進数として解釈され、それ以外の場合は先行する0 オフセットが8進数として解釈されます。 文字b kまたはmオフセットに 付加すると、それぞれ512 1024または1048576の倍数として解釈されます。

-v

-vオプションを指定すると、hexdumpはすべての入力データを表示します。 -vオプションを指定しないと、直前の出力行グループ(入力オフセットを除く)と同じ数の出力行グループが1つのアスタリスクで構成される行に置き換えられます。

-バツ

2バイトの16進表示入力オフセットを16進数で表示し、続いて8行、スペース区切り、4列、ゼロ充填、2バイトの入力データを1行に16進数で表示します。

各入力ファイルに対して、入力を標準出力に順次コピーし、指定された順序で-eおよび-fオプションで指定された書式文字列に従ってデータを変換します。

フォーマット

書式文字列には、空白で区切られた任意の数の書式単位が含まれます。 フォーマット単位には、反復回数、バイト数、および書式の3つまでの項目が含まれます。

反復回数はオプションの正の整数で、デフォルトは1です。 各フォーマットは反復回数に適用されます。

バイト数はオプションの正の整数です。 これを指定すると、フォーマットの各反復で解釈されるバイト数が定義されます。

反復回数やバイト数が指定されている場合は、反復回数後および/またはバイト数の前にスラッシュを1つ入れて曖昧さを除去する必要があります。

スラッシュの前後の空白は無視されます。

フォーマットは必須であり、二重引用符( "")で囲む必要があります。 次の例外を除いて、fprintf形式の書式文字列(fprintf(3)を参照)として解釈されます。

Hexdumpは、以下の追加の変換文字列もサポートしています。

_a [ dox ]

表示される次のバイトの、入力ファイル全体にわたる累積された入力オフセットを表示します。 付加された文字d oおよびxは、ディスプレイベースをそれぞれ10進数、8進数または16進数で指定します。

_A [ dox ]

_a変換文字列と同じですが、すべての入力データが処理された時点で1回だけ実行されます。

_c

デフォルトの文字セットの文字を出力します。 非印字文字は、2つの文字列として表示される標準のエスケープ表記法(上記を参照)で表現可能なものを除いて、3文字のゼロパディング8進数で表示されます。

_p

デフォルトの文字セットの文字を出力します。 印字されない文字は単一の ``として表示されます。 ''

_u

US ASCII文字を出力しますが、制御文字は以下の小文字の名前を使用して表示されます。 0xff(16進数)より大きい文字は、16進文字列として表示されます。

000nul 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 00f si 010dle 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

変換文字のデフォルトおよびサポートされているバイト数は次のとおりです。

%_c、%_p、%_u、%c

1バイトだけがカウントされます。

%d、%i、%o %u、%X、%x

4バイトのデフォルト、1,2,4バイトのカウントがサポートされています。

%E、%e、%f %G、%g

8バイトのデフォルト、4バイトカウントがサポートされています。

各フォーマット文字列によって解釈されるデータの量は、各フォーマットユニットが必要とするデータの合計であり、反復カウントはバイトカウントを掛けるか、反復カウントはバイトカウントがそうでない場合にフォーマットが必要とするバイト数指定された。

入力は ``ブロック ''で操作され、ブロックは任意のフォーマット文字列で指定されたデータの最大量として定義されます。 最後の書式単位がいくつかのバイト数を解釈し、指定された反復回数を持たない入力ブロック分のデータを解釈する書式文字列は、入力ブロック全体が処理されるか、十分なデータがない限り反復回数が増えますブロック内に残り、フォーマット文字列を満たす。

ユーザ指定の結果として、または前述のように反復回数を変更するヘキサダンプの結果として、反復カウントが1より大きい場合、最後の反復中に後続の空白文字は出力されません。

変換文字または文字列の1つを除くすべてが_aまたは_Aでない限り、バイト数と複数の変換文字または文字列を指定するのは誤りです

-nオプションの指定またはファイルの終わりに達した結果、入力データがフォーマット文字列を部分的に満たすだけであれば、入力ブロックはすべての使用可能なデータを表示するのに十分なだけゼロに埋め込まれます(つまり、データの終わりにはゼロバイト数が表示されます)。

このような書式文字列によるさらなる出力は、同等の数のスペースで置き換えられます。 同じ数のスペースは、元の変換文字または変換文字列と同じフィールド幅と精度を持ち、 `` '' '' `` ''が付いたs変換文字が出力するスペースの数として定義されます変換フラグ文字が削除され、NULL文字列が参照されます。

書式文字列が指定されていない場合、デフォルトの表示は-xオプションを指定するのと同じです。

成功した場合は0を返し、エラーが発生した場合は0を返します。

使用例

入力を閲覧形式で表示します。

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

-xオプションを実装する:

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

標準

このユーティリティはSt -p1003.2と互換性があります。