ファームウェアを見るなどバイナリエディタを使わざるを得ない状況ってほぼないですよね
しかし、使わざるを得ない状況も出てきます
viに慣れた人にはbviがお勧めです
パパはvi使いなので、もちろんbviを使います
bvi は起動する時にファイルを指定して開きます
$ bvi hoge.bin
起動すると3つの画面が表示されます
一番左がバイトの位置、真ん中が16進数、いちばん右がアスキー文字列です。
bviを開いているターミナルのサイズによって一行に表示されるバイト数が変わります。
1行に11byte表示されるとか嫌なので、一行に表示されるバイト数を 8 や 16、32にしておくと楽です。
これは :set コマンドで変更できます。
:set cm=16
.bvirc に書くなら下のような感じです。
set cm=16
ただ、cm で設定した値が表示できないウィンドウサイズだと表示されるバイト数も少なくなるようです。
その場合はウィンドウを大きくして:set コマンドでサイズを変更できます
また、バイナリエディタでデータを編集したい場合ですが、初期状態だと編集できません
:set コマンドで編集できるようになります
:set memmove
データの変更する場合、バイナリとアスキーの画面の好きな方で変更できます。
バイナリ<->アスキーの画面移動はTABでできます
追加や削除等のコマンドはviと同じコマンドです。
アスキー文字の検索もviと同じです。しかし、バイナリデータのコマンドはベットあります。
カーソルよりも後ろのアスキー文字を検索
/検索したい文字列
カーソルよりも前のアスキー文字を検索
?検索したい文字列
カーソルよりも後ろのバイナリデータを検索
\検索したい文字列
カーソルよりも前のバイナリデータを検索
#検索したい文字列
ピンバック:黒ぶちメガネのblog » Blog Archiv » afioコマンドを使ってみた。