Linux 终端上的框中的符号 001E

Linux 终端上的框中的符号 001E

在 Linux 终端中读取 Windows 日志文件时,我看到一个奇怪的符号“001E”

在此处输入图片描述

我怎样才能用空格代替它?也许像sed -e 's/010e/ /'

答案1

如果您看到方框中有这四个十六进制数字,则表示您的终端的字体不包含该字符。十六进制表示法会告诉您它是哪个字符:U+001E,位于控制字符范围 — 1E 是^^(即Ctrl-^)。

如果你想用空格替换它,你可以使用

sed -e 's/\x1E/ /g' <input-file >output-file

或者

tr '\036' <input-file >output-file

tr仅接受八进制)。

答案2

取代带有卡隆 (CARON) 的拉丁文大写字母 D, 做这个:

$ sed 's/Ď/ /g'

答案3

使用回答作为参考:

CHARS=$(python -c 'print u"\u001E".encode("utf8")')
sed 's/['"$CHARS"']//g' < /tmp/utf8_input.txt > /tmp/ascii_output.txt

不过我不确定你的字符是什么...截图显示是 0x001e,但你提到了 0x010e。不管是哪一个,你都可以根据需要更改上面的脚本。

相关内容