vi十六进制编辑

指定行
:n

光标行之前或之后的n个字符
nl 之后 2l 光标位置两个字符后
nh 之前 2h 光标位置两个字符前

光标行之上或之下的n个字符
nk 之上 1k 光标位置1个字符之上
nj 之下 1j 光标位置1个字符之下

在vi的命令状态下,执行如下指令 :
:%!xxd 将当前文本转换为16进制格式,十六进制和字符显示。 改变值需要修改十六进制值。

:%!od 将当前文本转换为16进制格式,十六进制文本。
:%!xxd -c 12——将当前文本转换为16进制格式,并每行显示12个字节。
:%!xxd -r ——将当前文件转换回文本格式。

文件内容:

abcd
1234

查看文件编码:

file info.txt

查看文件二进制信息

$vi info.txt
:%!xxd

文件编码格式转换

iconv -f utf-8 -t gbk < info.txt > info1.txt

查看info1.txt文件编码

$vi info1.txt
:%!xxd

以十六进制方式对文本内容进行替换 使用vi命令

:%s/c4e3/6162/g

恢复文本显示

:%!xxd -r

 

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注