如何使用 sed 和 vim 使用十六进制地址删除特定字节序列?

How do I remove specific byte sequences with sed and vim using hex addresses?

我有一个字符串,在 vim

中看起来像这样

PFLUGERVILLE TX 7x691 227 12515 <83>¨¨ x Research Boulevard

参考vim,

ga Print the ascii value of the character under the cursor in decimal, hexadecimal and octal.

g8 Print the hex values of the bytes used in the character under the cursor, assuming it is in UTF-8 encoding. This also shows composing characters. The value of 'maxcombine' doesn't matter.

我可以检查它,如果我检查它 <83> 并输入 ga,我明白了

<<83>> 131, Hex 0083, Octal 203

如果我输入 g8,我会得到

c2 83

我本来以为

sed -e's/\x00\x83//g' ./file.csv

可以删除角色,但没有乐趣。

没有

sed -e's/\x00\x83//g' ./file.csv

但是,

LC_CTYPE=C sed -e's/\x83//g' ./file.csv

您必须使用 LC_CTYPE=C,并删除开头的 \x00