相关疑难解决方法(0)

删除字节时,如何在vim中为“ xxd -r”进行有效输入?

创建一个名为的文件,test其中包含以下内容:

0123456789abcdef0123456789abcdef
Run Code Online (Sandbox Code Playgroud)

我想0使用xxd 删除第一个。打开它,vim -b test然后:%!xxd在vim中运行。结果是:

0000000: 3031 3233 3435 3637 3839 6162 6364 6566  0123456789abcdef
0000010: 3031 3233 3435 3637 3839 6162 6364 6566  0123456789abcdef
0000020: 0a                                       .      
Run Code Online (Sandbox Code Playgroud)

然后我删除的十六进制代码30为先0

0000000: 31 3233 3435 3637 3839 6162 6364 6566  0123456789abcdef
0000010: 3031 3233 3435 3637 3839 6162 6364 6566  0123456789abcdef
0000020: 0a                                       .
Run Code Online (Sandbox Code Playgroud)

然后我:%!xxd -r跑回阅读十六进制。结果是:

^@23456789abcdef^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
Run Code Online (Sandbox Code Playgroud)

结果是乱码。我知道原因是上述内容不是有效的xxd输入。如果我删除行号和文本部分:

31 3233 3435 3637 3839 6162 6364 6566
3031 …
Run Code Online (Sandbox Code Playgroud)

vim xxd

5
推荐指数
1
解决办法
1280
查看次数

标签 统计

vim ×1

xxd ×1