我使用以下命令在文本文件中的字符之间插入新行,以生成单列字符:
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,然后重试。