HEXDUMP(1) FreeBSD 一般コマンドマニュアル HEXDUMP(1)
名称
hexdump, hd − ASCII, 10進, 16進, 8進でのダンプ |
書式
hexdump [−bcCdovx] [−e format_string] [−f format_file] [−n length] [−s skip] file ... |
hd [−bcdovx] [−e format_string] [−f format_file] [−n length] [−s skip] file ... |
解説 |
hexdump ユーティリティは、ファイルが指定されていればそのファイル、指定さ れていなければ標準入力を読み込み、ユーザの指定したフォーマットに従って表 示するフィルタです。 オプションは以下の通りです: |
−b
1 バイト 8 進表示。入力のオフセットを 16 進数で表示し、次に、 入力の1バイトずつを、0 詰めした 3 桁の 8 進数で、1 行あたり 16 個、空白で区切って表示します。 −c −C コマンド hd を実行すると、このオプションで hexdump 実行したこ とを意味します。 −d −e format_string −f format_file −n length −o −s offset −v −x hexdump は、各々の入力ファイルの内容を、それらが指定された順に、 −e およ び −f オプションによって指示されたフォーマット文字列に従って変換しなが ら、シーケンシャルに標準出力へコピーします。 フォーマット 繰り返し回数は正の整数で、省略時の値は 1 です。それぞれのフォーマットはこ の繰り返し回数だけ適用されます。 バイト数も正の整数で、省略することもできます。指定された場合には繰り返し 1 回あたりに処理されるバイト数を示します。 繰り返し回数とバイト数はスラッシュ (/) で区切ります。どちらか一方だけ指定 する時も、繰り返し回数の場合は直後、バイト数の場合は直前にスラッシュを付 け、曖昧にならないようにします。スラッシュの前後にある空白は無視されま す。 フォーマットは必須であり、ダブルクォート (" ") で囲みます。フォーマットは fprintf 形式のフォーマット文字列 ( fprintf(3) を参照) ですが、以下の例外 があります。 • フィールドの幅あるいは精度としてアスタリスク (*) を使用すること はできません。 • ‘‘s’’ 変換文字にはバイト数または精度を指定しなければなりません (精度が指定されなかった場合は文字列全体を表示するという fprintf(3) のデフォルトとは異なります)。 • 変換文字 ‘‘h’’, ‘‘l’’, ‘‘n’’, ‘‘p’’ , ‘‘q’’ はサポートされてい ません。 • C の標準規格の中で記述されている以下の 1 文字エスケープシーケン スをサポートしています。 |
NUL \0 |
hexdump ユーティリティはさらに以下の変換文字をサポートします。 |
_a[dox]
次に表示されるバイトのオフセット (複数の入力ファイルを通算し ての値) を表示します。文字 d, o, x を付加すると、表示をそれぞ れ 10 進、8 進、16 進形式にします。 _A[dox] _c _p _u 000 NUL 001 SOH 002 STX 003 ETX 004 EOT 005 ENQ 各々の変換文字について、サポートされているバイト数とデフォルトのバイト数 は以下の通りです: |
%_c, %_p, %_u, %c
1 バイトのみ使用できます。 %d, %i, %o, %u, %X, %x %E, %e, %f, %G, %g 各フォーマット文字列によって処理されるデータの量は、各フォーマット単位が 必要とするデータ量の合計であり、これはバイト数の繰り返し回数倍、あるいは バイト数が指定されていない場合にはフォーマットの必要とするバイト数の繰り 返し回数倍になります。 入力は ‘‘ブロック’’ ごとに処理されます。ブロックとは、フォーマット文字列 によって指定されるデータの塊のうちで最も大きいものです。 1 ブロック分の データを処理し切らないフォーマット文字列で、その中の最後のフォーマット単 位が何バイトかを処理し、かつ繰り返し回数が指定されていないものは、ブロッ ク全体が処理され切るか、フォーマット文字列に合致するデータがブロック中に なくなるまで繰り返し回数を増やされます。 ユーザの指定または hexdump が上記のように繰り返し回数を変更した結果、繰り 返し回数が 1 より大きくなった場合、最後の繰り返しにおける末尾の空白は出力 されません。 バイト数を複数の変換文字と共に指定すると、1 つを除いた全ての変換文字が _a または _A である時以外、エラーになります。 入力がフォーマット文字列の一部分しか満たしていない状態で −n オプションで 指定したバイト数あるいはEOFに到達した場合、有効なデータをすべて表示できる よう、入力ブロックには適当な数の 0 が補われます。(すなわち、データの終端 にまたがっているフォーマット単位は何バイトかの 0 を表示します。) そのようなフォーマット文字列によるさらなる出力は、等数の空白で置き換えら れます。等数の空白とは、もとの変換文字あるいは変換文字列とフィールド幅と 精度は同じで ‘‘+’’, ‘‘ ’’, ‘‘#’’ を取り除いた s 変換文字が、NULL 文字列を 指した場合に出力される数の空白です。 フォーマット文字列が指定されない場合、デフォルトの表示形式は −x オプショ ンが指定された場合のものと同じになります。 診断 |
ユーティリティ hexdump および hd は、成功すると 0 で、エラーがあった場合 は >0 で終了します。 |
使用例
入力を perusal 形式で表示する: "%06.6_ao " 12/1 "%3_u " "\t\t" "%_p " "\n" −x オプションを実装: "%07.7_Ax\n" "%07.7_ax " 8/2 "%04x " "\n" |
関連項目
FreeBSD 10.0 July 10, 2004 FreeBSD 10.0 |