xxd

How to make a valid input for “xxd -r” in vim when removing a byte?

断了今生、忘了曾经 提交于 2019-12-01 21:16:36
Create a file named as test containing the following content: 0123456789abcdef0123456789abcdef I want to remove the first 0 with the use of xxd. Open it with vim -b test then run :%!xxd inside vim. The result is: 0000000: 3031 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000010: 3031 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000020: 0a . Then I remove the hex code 30 for the first 0 : 0000000: 31 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000010: 3031 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000020: 0a . Then I run :%!xxd -r to read the hex back. The

How to make a valid input for “xxd -r” in vim when removing a byte?

回眸只為那壹抹淺笑 提交于 2019-12-01 17:27:23
问题 Create a file named as test containing the following content: 0123456789abcdef0123456789abcdef I want to remove the first 0 with the use of xxd. Open it with vim -b test then run :%!xxd inside vim. The result is: 0000000: 3031 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000010: 3031 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000020: 0a . Then I remove the hex code 30 for the first 0 : 0000000: 31 3233 3435 3637 3839 6162 6364 6566 0123456789abcdef 0000010: 3031 3233 3435

VIM使用系列:二进制文件编辑

那年仲夏 提交于 2019-11-26 17:28:12
vim一般是作为文本编辑工作,主要如代码编写,编辑二进制文件一般不再vim的功能范畴。不过在Linux系统中偶尔也会碰到一些二进制文件,如二进制的数据文件等,在一定范围内也可以使用vim进行查看和修改。 查看和定位 打开一个二进制文件时,要保证 Vim 别把它那些聪明的窍门用错地方,启动 Vim 时加上 "-b" 参数: vim -b datafile 这个参数设定了 'binary' 选项。其作用是排除所有的意外副作用。例如,'textwidth'设为零,免得文本行给擅自排版了。并且,文件一律以 Unix 文件格式读取。 二进制模式可以用来修改某程序的消息报文。小心别插入或删除任何字符,那会让程序运行出问题。用 "R" 命令进入替换模式。文件里的很多字符都是不可显示的。用 Hex 格式来显示它们的值: :set display=uhex 另外,也可以用命令 "ga" 来显示光标下的字符值。当光标位于一个 字符上时,该命令的输出看起来就像这样: 27, Hex 1b, Octal 033 文件中也许没那么多换行符。你可以关闭 'wrap' 选项来获得总览的效果: :set nowrap 要发现你在文件中的当前字节位置,请用这个命令: g CTRL-G 其输出十分冗长: Col 9-16 of 9-16; Line 277 of 330; Word 1806 of 2058;