使用vim按hex代码search
我需要清理一个文件。 我们有一个运行在它上面的xmlparsing器,由于文件中的转义字符(0x1B)而失败。 我如何使用vim来查找文件中的哪个字符,以便我可以删除它?
示例文件:
<?php echo "Hello, world.\n"; ?>
转换后:
0000000: 0a3c 3f70 6870 0a65 6368 6f20 2248 656c .<?php.echo "Hel 0000010: 6c6f 2c20 776f 726c 642e 5c6e 223b 0a3f lo, world.\n";.? 0000020: 3e0a
所以我删除一个char :(在这个例子中,'H')
0000000: 0a3c 3f70 6870 0a65 6368 6f20 22 656c .<?php.echo "Hel 0000010: 6c6f 2c20 776f 726c 642e 5c6e 223b 0a3f lo, world.\n";.? 0000020: 3e0a
注意第一行不够宽。 当我将其转换回来时,我得到:
^@<?php echo "el^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@>
search(例如使用/ )为\%x1b
。
您还可以通过在Ctrl – V前面input控制字符(包括转义字符)到命令行中。 所以input/ , Ctrl-V , Esc , Enter 。
通过执行[escape] :%!xxd
将vim转换为hex编辑器。 然后search0x1B( /1B
)。