gpt4 book ai didi

linux - Mac 与 Linux 中的可打印字符

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:50 24 4
gpt4 key购买 nike

如果我从我的 Mac 上的命令行执行此操作(终端中的 UTF-8 和文件也是):

tr -cd '[:print:]\n' < infile > outfile

我在输出文件中得到的结果与我在 Linux 系统上运行相同的命令时得到的结果不同(终端中的 UTF-8,文件也是如此)。

这可能是什么原因?

这是在 Mac 上运行命令时仍然存在的示例字符:š(该字符是一个扩展的 ASCII 字符 0x9A/s,带有 caron)。在 Linux 上运行命令时删除了相同的字符。

最佳答案

如果剩余字节是 0x9A,则该文件不是正确的 UTF-8,也不是您用来查看它的工具(例如 Windows codepage 1252 中的 0x9A 是 š),显然您的 tr .

要正确解决您的问题,我们需要查看文件中实际字节的片段。例如,显示为 åäö 的文件可能包含字节

0xE5 0xE4 0xF6

如果它在 ISO-8859-1 中(与这些位置的 CP1252 重合)或

0xC3 0xA5 0xC3 0xA4 0xC3 0xB6

如果它是正确的 UTF-8。在 OSX 上,旧文件也可能位于 Mac Roman 中。这会将此字符串编码为

0x8C 0x81 0x9A

当然还有大量其他编码,具体取决于文件的出处。

关于linux - Mac 与 Linux 中的可打印字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27071813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com