在 html 文件中的奇怪 html 字符之间插入新行时出现问题 - UTF-8

在 html 文件中的奇怪 html 字符之间插入新行时出现问题 - UTF-8

我使用以下命令在文本文件中的字符之间插入新行,以生成单列字符:

sed 's/./&\n/g' file.txt

这适用于 ASCII 内的字符;例如,来自:

123

到:

1

2

3

我无法使用多字节字符(例如 )进行任何操作Õöþùüê¡£¢¥Ÿ£€Ÿ£¡œãòá碜áòá,这些字符出现在我下载为 HTML 的网页上。

有什么建议么?

这是我正在为我发布的另一个问题开发的解决方案的一部分 - 我最终试图生成一个脚本来将这些字符转换为英语 - 但我需要将每个字符放在自己的行上。

答案1

有什么建议么?

首先,这对我来说效果很好:

echo "Õöþùüê¡£¢" | sed 's/./&\n/g'
Õ
ö
þ
ù
ü
ê
¡
£
¢

鉴于这种locale

locale
LANG=sv_SE.UTF-8
LANGUAGE=
LC_CTYPE="sv_SE.UTF-8"
LC_NUMERIC="sv_SE.UTF-8"
LC_TIME="sv_SE.UTF-8"
LC_COLLATE="sv_SE.UTF-8"
LC_MONETARY="sv_SE.UTF-8"
LC_MESSAGES="sv_SE.UTF-8"
LC_PAPER="sv_SE.UTF-8"
LC_NAME="sv_SE.UTF-8"
LC_ADDRESS="sv_SE.UTF-8"
LC_TELEPHONE="sv_SE.UTF-8"
LC_MEASUREMENT="sv_SE.UTF-8"
LC_IDENTIFICATION="sv_SE.UTF-8"
LC_ALL=

我的猜测是你locale不是UTF-8。尝试将您的设置locale为 UTF-8,然后重试。

相关内容