从\ unnnn转换为字母

时间:2011-12-21 12:58:30

标签: linux bash shell scripting

我有一个文件,其中存储的信件如下

\u0410\u0411\u0426

我想将它们转化为可读的东西 例如,\u0410\u0411\u0426表示АБЦ

但我不知道为什么A存储为\u0410或为什么Б存储为\u0411。  我怎样才能在这两者之间进行转换?

2 个答案:

答案 0 :(得分:4)

$ echo -e '\u0410\u0411\u0426'
АБЦ
$ printf '\u0410\u0411\u0426'
АБЦ
$ python3 -c 'print("\u0410\u0411\u0426")'
АБЦ
$ echo '\u0410\u0411\u0426' | ascii2uni -qaU
АБЦ

答案 1 :(得分:1)

#irb -E binary
ruby-1.9.3-p0 :001 > s="\u0410\u0411\u0426"
 => "\u0410\u0411\u0426" 

#irb -E utf-8
ruby-1.9.3-p0 :001 > s="\u0410\u0411\u0426"
 => "АБЦ"

您必须阅读有关字符编码的内容,unicodeUTF-8