用VIM查看编辑二进制文件
vim可以很方便地编辑二进制文件,个人认为它比emacs的二进制编辑方式更好用。vim中二进制文件的编辑是先通过外部程序xxd来把文件dump成其二进制的文本形式,然后就可以按通常的编辑方式对文件进行编辑,编辑完成后再用xxd 转化为原来的形式即可。
可分如下几步进行:
(1) 首先以二进制方式编辑这个文件: vim -b datafile
(2) 现在用 xxd 把这个文件转换成十六进制: :%!xxd
文本看起来像这样:
0000000: 1f8b 0808 39d7 173b 0203 7474 002b 4e49 ....9..;..tt.+NI0000010: 4b2c 8660 eb9c ecac c462 eb94 345e 2e30 K,.`.....b..4^.00000020: 373b 2731 0b22 0ca6 c1a2 d669 1035 39d9 7;'1.".....i.59.
现在你可以随心所欲地阅读和编辑这些文本了。 Vim 把这些信息当作普通文本来对待。修改了十六进制部分并不导致可显示字符部分的改变,反之亦然。
(3) 最后,用下面的命令把它转换回来: :%!xxd -r
只有十六进制部分的修改才会被采用。右边可显示文本部分的修改忽略不计。
xxd是的一个命令,vim可以通过”!”来调用外部命令,其功能就是进行十六进制的dump或者反之。