sed unicode替换文件和字符串

时间:2017-03-09 23:12:00

标签: unicode sed

我正在使用sed将unicode字符串转换为其他一些unicode,并取得了不同的成功。

有人可以解释一下。我有一个急剧的文件,显示为blob字符,也被软件拒绝显示。

如果我尝试替换     echoTh i| sed's / \ xef \ xbf \ xbd / \ xc3 \ xa1 /' 我得到了理想的结果     泰

如果我将字符串放入文件

echo Th�i > t1
cat t1||sed 's/\xef\xbf\xbd/\xc3\xa1/'

结果是

Th�i

无论是在文件中还是在回显

中,字符串都是相同的
cat t1|hexdump -C
00000000  54 68 ef bf bd 69 0a                              |Th...i.|
echo Th�i |hexdump -C
00000000  54 68 ef bf bd 69 0a                              |Th...i.|
00000007

我尝试在文件中添加一个字符,以防它与endian边界有关,但结果仍然相同。

任何人都可以建议我缺少的东西。

1 个答案:

答案 0 :(得分:0)

感谢Michael Vehrs提出一个简单的问题。 由于某种原因,文件炸弹的猫howerve

echo Th�i > t1
sed 's/\xef\xbf\xbd/\xc3\xa1/' t1

Thái

并且也有效

sed -i 's/\xef\xbf\xbd/\xc3\xa1/' t1