Используйте энергию для поиска шестнадцатеричным кодом

Я должен очистить файл. У нас есть xml синтаксический анализатор, который работает на нем, который перестал работать из-за символа ESC (0x1B) в файле. Как я использую энергию для нахождения, куда в файле, который символ так, я могу удалить его?

Файл в качестве примера:

<?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  

Таким образом, я удаляю символ: (в этом примере, '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^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@> 
41
задан David Oneill 15 February 2010 в 14:43
поделиться

2 ответа

Поиск (например, используя /) для \%x1b.

Вы также можете вводить управляющие символы, включая escape, в командную строку, предваряя их Ctrl-V. Поэтому введите /, Ctrl-V, Esc, Enter.

56
ответ дан 27 November 2019 в 00:42
поделиться

Преобразуйте vim в шестнадцатеричный редактор, выполнив [escape]:%! Xxd . Затем найдите 0x1B ( / 1B ).

11
ответ дан 27 November 2019 в 00:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: