Linux cat 终端 中文 乱码

来源:互联网 发布:云豹直播完整源码 编辑:程序博客网 时间:2024/05/22 11:59

概述

OS:Raspbian

最近每天都在考虑笔试、面试以及找工作的事情,不仅CSDN博客又有开始荒废的倾向,就是以前的一些知识也开始逐步退忘,最近,赶紧还得复习复习。反正,大四真忙。
上次,将vim的编码改成了UTF-8,为什么不用GBK,这是因为在以前发现有的设备并不支持UTF-8。我在编写彩虹雨的游戏当中就出现过,在WIN32平台运行正常,但是移植到安卓平台,所有的字都无法显示。无奈采用将文字保存到XML中,然后从XML中读取文字。最后,因为采用XML来保存文字,还增加了一个多语言支持。
但是,随之而来的一个问题就是Linux里的cat命令无法正常使用了,因为cat只能读取GBK码,其他都是乱码。我从网络上找了很久资料,发现没有任何关于这面的资料,即使有也根本没用。刚刚,忽然想起来vim的显示不过也是字符编码的转换,那么我自己写一个简单的脚本不就OK了。于是,我就成功了。

cat 可正常显示所有中文编码

1.首先要安装两个工具enca iconv
树莓派上好像本来就有iconv 所以不用安装 其他的Linux发行版如果没有自行安装

sudo apt-get install enca

2.建立一个新的shell脚本

sudo vim /usr/bin/cat1

脚本内容:

#!/bin/bash# 获取文件编码var=$(enca $1)code=${var#*; }#生成临时文件iconv -f $code -t GBK -o /tmp/tempcat $1#读取临时文件cat /tmp/tempcat#删除临时文件rm /tmp/tempcat

3.最后记得改变文件权限就可以了

sudo chmod 755 /usr/bin/cat1

以后 打开文件执行 cat1 filename即可 很方便 而且不用更改系统配置

0 0
原创粉丝点击