ファイルをダンプして見たくなることはないだろうか? バイナリファイルの中身が気になるとか。私は、たまに、ある。
標準状態の Mac OS X では hexdump とか od コマンドで16進数によるダンプリストを表示できる。
$ hexdump -C hoge.dat 00000000 25 50 44 46 2d 31 2e 34 0d 25 e2 e3 cf d3 0d 0a |%PDF-1.4.%......| 00000010 34 34 20 30 20 6f 62 6a 0d 3c 3c 2f 4c 69 6e 65 |44 0 obj.<</Line| 00000020 61 72 69 7a 65 64 20 31 2f 4c 20 33 34 37 32 34 |arized 1/L 34724| 00000030 37 2f 4f 20 34 36 2f 45 20 33 31 38 33 34 38 2f |7/O 46/E 318348/| 00000040 4e 20 31 2f 54 20 33 34 36 32 35 32 2f 48 20 5b |N 1/T 346252/H [| 00000050 20 31 32 33 36 20 32 35 34 5d 3e 3e 0d 65 6e 64 | 1236 254]>>.end| 00000060 6f 62 6a 0d 20 20 20 20 20 20 20 20 20 20 20 20 |obj. | 00000070 20 20 20 0d 78 72 65 66 0d 34 34 20 34 37 0d 30 | .xref.44 47.0| 00000080 30 30 30 30 30 30 30 31 36 20 30 30 30 30 30 20 |000000016 00000 | 00000090 6e 0d 0a 30 30 30 30 30 30 31 36 35 36 20 30 30 |n..0000001656 00| 000000a0 30 30 30 20 6e 0d 0a 30 30 30 30 30 30 31 37 39 |000 n..000000179| 000000b0 39 20 30 30 30 30 30 20 6e 0d 0a 30 30 30 30 30 |9 00000 n..00000| 000000c0 30 32 33 36 37 20 30 30 30 30 30 20 6e 0d 0a 30 |02367 00000 n..0|
$ od -tx1 fuga.dat ... 出力結果は省略 ...
日本語を含むファイルをダンプしたい場合は「hexja - 日本語対応16進数ダンプツール」というRubyスクリプトが便利。
$ hexja -isjis ja_str.dat 00000000 93 fa 96 7b 8c ea 95 b6 8e 9a 97 f1 82 aa 8a dc 日本語文字列が含 00000010 82 dc 82 ea 82 c4 82 a2 82 e9 83 74 83 40 83 43 まれているファイ 00000020 83 8b 81 42 0a ル。J
hexjaは標準インストールされるコマンドじゃないので、独自にインストールしなくてはならない。
先頭の部分だけちょっと見たいときは head にパイプして、
$ hexja hoge.dat | head -8
とする。hexjaに限らず、hexdumpでもodでも同じ。
0 件のコメント:
コメントを投稿