vim 编辑二进制文件


可以在 Vim里通过转换程序 “xxd” 来进行二进制文件的编辑。

首先以二进制方式编辑这个文件:

vim -b binaryfile

然后用 xxd 把这个文件转换成十六进制:

在vim界面中输入如下命令:

:%!xxd

文本看起来像这样:

  1 0000000: ceb0 d418 edf4 fc9c ea79 2632 4e02 45e1  .........y&2N.E.
  2 0000010: 820a b23f 678e ee8a 314c d73a 20f7 100d  ...?g...1L.: ...  

  3 0000020: af4b c1ec 3e17 ba50 b384 2f48 3b90 7cf0  .K..>..P../H;.|.
  4 0000030: f8be eefe 7ed1 a84b a8fd e988 8095 106c  ....~..K.......l
  5 0000040: 67c2 6549 7fb8 2165 f846 b5b0 4e68 4a8c  g.eI..!e.F..NhJ.
  6 0000050: f5d9 ff9e 9a8c df0d                                             ........    

显示格式类似于wireshark显示包的格式,搞网络的同学肯定觉得很亲切。大笑 

Vim 把这些信息当作普通文本来对待。修改了十六进制部分并不导致可显示字符部分的改变,反之亦然。

最后,用下面的命令把它转换回来:

:%!xxd -r

修改只针对16进制显示部分的内容有效,其余部分修改都不会影响文件的内容。


但打开文件的时候,切记切记要加上-b选项,否则编辑内容会有问题


你可能感兴趣的:(c,网络,vim)