在 Vim 中,^@ 表示 ASCII 码中的 NULL 字符,编码为 0x00,占用一个字节。
删除方法
方法1,采用 <CTRL-V><CTRL-J> 或 <CTRL-2> 或 <CTRL-SHIFT-2> 按键输入在 Vim 中输入 NULL 字符(显示为 ^@),然后将所有的 NULL 字符替换为空字符 ''。具体命令如下:
:%s/<CTRL-V><CTRL-J>//g
:%s/<CTRL-2>//g
:%s/<CTRL-SHIFT-2>//g
注,<CTRL-V> 表示按住<CTRL>键不放,然后按下字符 V 键;<CTRL-SHIFT-2> 表示按住 <CTRL> 键和 <SHIFT> 键不放,然后按下字符 2 键。
注意,<CTRL-V><CTRL-J>组合按键比较通用,按键 <CTRL-2> 或 <CTRL-SHIFT-2> 在某些电脑上可能失效。如果按键方式全部无效,可以采用方法 2。
方法2,在 Vim 替换文本命令时,采用 NULL 字符的 ASCII 编码表示。具体命令如下:
:%s/\%x00//g
也可以采用 <CTRL-V> 按键,然后在 Vim 中输入 NULL 字符的 3 位八进制 ASCII 编码,即 000。具体命令如下:
:%s/<CTRL-V>000//g
方法3,采用 Linux 命令行工具 tr 。tr 工具用于转换、压缩或删除来自标准输入的字符,并写到标准输出。在 Vim 中的具体命令如下:
:%!tr -d '