vim能夠很方便地編輯二進制文件,我的認爲它比emacs的二進制編輯方式更好用。vim中二進制文件的編輯是先經過外部程序xxd來把文件dump成其二進制的文本形式,而後就能夠按一般的編輯方式對文件進行編輯,編輯完成後再用xxd 轉化爲原來的形式便可。linux
可分以下幾步進行:vim
(1) 首先以二進制方式編輯這個文件: vim -b datafilespa
(2) 如今用 xxd 把這個文件轉換成十六進制: :%!xxd.net
文本看起來像這樣:get
0000000: 1f8b 0808 39d7 173b 0203 7474 002b 4e49 ....9..;..tt.+NI 0000010: 4b2c 8660 eb9c ecac c462 eb94 345e 2e30 K,.`.....b..4^.0 0000020: 373b 2731 0b22 0ca6 c1a2 d669 1035 39d9 7;'1.".....i.59.
如今你能夠爲所欲爲地閱讀和編輯這些文本了。 Vim 把這些信息看成普通文原本對待。修改了十六進制部分並不致使可顯示字符部分的改變,反之亦然。emacs
(3) 最後,用下面的命令把它轉換回來: :%!xxd -rfile
只有十六進制部分的修改纔會被採用。右邊可顯示文本部分的修改忽略不計。二進制
xxd是Linux的一個命令,vim能夠經過」!」來調用外部命令,其功能就是進行十六進制的dump或者反之。程序