一般来讲文件分为文本和二进制文件两大类,文本文件的编辑很容易,Windows下的 notepad、UltraEdit都很好用,二进制文件的编辑在Windows下也有不少工具,UltraEdit也不错,可是Linux下呢?今天终 于发现了一个好方法,可是最终出处找不到了。vim
首先建立一个二进制文件:oracle
1
2
3
|
[oracle@logserver tmp]$
echo
-n
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
>
test
.bin
[oracle@logserver tmp]$
cat
test
.bin
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz[oracle@logserver tmp]$
|
注意echo 必定要跟上 -n 选项,不然会被自动加上一个换行行,再用vim打开 test.bin工具
1
|
[oracle@logserver tmp]$ vim -b
test
.bin
|
vim 的 -b 选项是告诉 vim 打开的是一个二进制文件,不指定的话,会在后面加上 0x0a ,即一个换行符。spa
在命令模式下键入:code
1
|
:%!xxd
|
若是 vim 后面没有加 -b 选项就会出现可恶的 0x0a:server
若是有 -b 选项就不会有这种状况:blog
而后进入编辑模式改,改就是了,我将A、B对应的4一、42改为6一、62,将a、b对应的6一、62改为4一、42。ci
回到命令模式输入:get
1
|
:%!xxd -r
|
此时能够发现AB和ab的位置互换了。it
最后在命令模式中输入 :wq 保存退出便可。