vim-バイナリ表示
vimでバイナリ表示する。
(1)vimをバイナリモードで起動する。
オプション「-b」を指定することで、バイナリモードで起動します。
$ vim -b filename
(2)16進数ダンプ形式に変換する。
vimに付属のxxdコマンドを使用して、16進数ダンプ形式に変換します。
vimのコマンドモードで以下を実行します。
:%!xxd
vimでバイナリ編集する。
(1)vimをバイナリモードで起動する。
オプション「-b」を指定することで、バイナリモードで起動します。
$ vim -b filename
(2)16進数ダンプ形式に変換する。
vimに付属のxxdコマンドを使用して、16進数ダンプ形式に変換します。
:%!xxd
(3)16進数ダンプ形式を編集する。
通常のテキストファイルを編集する場合と同様に、任意にデータを編集します。
なお、16進数部分を変更しても、テキスト部分は更新されません。(逆も同様です。)
(4)16進数ダンプ形式からテキストに変換する。
編集が済んだら変換し、テキストに戻します。
:%!xxd -r
16進数部分への変更だけが反映されます。
右側のテキスト部分への変更は無視されます。
unixでのバイナリ表示コマンド
unixコマンドとしては、以下のコマンドでバイナリ表示(16進数)ができます。
$ hexdump -C filename
00000000 3b 0a 3b 6e 61 73 6d 20 2d 66 20 6d 61 63 68 6f |;.;nasm -f macho|
00000010 20 68 65 6c 6c 6f 2e 61 73 6d 0a 3b 67 63 63 20 | hello.asm.;gcc |
00000020 2d 6d 6d 61 63 6f 73 78 2d 76 65 72 73 69 6f 6e |-mmacosx-version|
$ xxd filename
0000000: 3b0a 3b6e 6173 6d20 2d66 206d 6163 686f ;.;nasm -f macho
0000010: 2068 656c 6c6f 2e61 736d 0a3b 6763 6320 hello.asm.;gcc
0000020: 2d6d 6d61 636f 7378 2d76 6572 7369 6f6e -mmacosx-version