如何让 cygwin终端中显示的中文改成英文
2015-06-25 22:49
1226 查看
转:http://blog.csdn.net/semilog/article/details/7870591
最新在用cygwin 在windows 下编译u-boot,下了最新版的cygwin
1.7.15-1,结果里面的有些提示显示的是中文,如下图:
这让我感觉怪怪的,上网找方法,结果无果而终,因为之前装的 cygwin 1.7.9-1显示的是英文,没有出现这个现象,所以对比两个 cygwin的 etc里面的文件,结果发现在这个文件( Cygwin/etc/profile.d/lang.sh)里不一样:
Cygwin 1.7.15-1
test -z "${LC_ALL:-${LC_CTYPE:-$LANG}}" && export LANG=$(/usr/bin/locale -uU)
Cygwin 1.7.9-1
test -z "${LC_ALL:-${LC_CTYPE:-$LANG}}" && export LANG=C.UTF-8
到这里,那解决方法就很简单了,把Cygwin 1.7.15-1 中的lang.sh文件改成LANG=C.UTF-8问题解决,解决后后的图
现在问题是解决了,那么再来一下思维扩散吧,见如下两个问题:
1. 除了改 lang.sh文件,有没有其他的方法把 cygwin
1.7.15-1中显示的中文改成英文?
2. 能不能把 cygwin
1.7.9-1中显示的英文改成中文?
呵呵,下面就一起看一下吧。
1. 除了改 lang.sh文件,有没有其他的方法把 cygwin
1.7.15-1中显示的中文改成英文?
只要看一下lang.sh文件中对应的这句:
export LANG=C.UTF-8
在bash脚本中定义一个 LANG 的变量,值为 C.UTF-8
那么,我们就可以在 cygwin.bat 中的bash
--login –i 前一行加上一句:
set LANG=C.UTF-8
bash --login –i
即可解决问题。
2. 能不能把 cygwin
1.7.9-1中显示的英文改成中文?
对于这个问题,还是从那个语句出发
LANG=$(/usr/bin/locale -uU)
中的 /usr/bin/locale –uU 是什么意思呢?在终端中输入locale
–uU,如下
嘿嘿,其实对于中文系统来说就是zh_CN.UTF-8,cygwin做了一个智能检测。
那么,我们把 cygwin 1.7.9-1中的lang.sh LANG=C.UTF-8改成LANG=$(/usr/bin/locale
-uU)看看出现什么结果。
我改了一下,结果出现下图的结果:
会发现也出现了中文了,但同样,如果在cygwin.bat中的话,那就不能写成:
set LANG=$(/usr/bin/locale -uU)
而要写成:
set LANG=zh_CN.UTF-8
基本上分析完了,但是还有一个遗留问题存在就是第二个问题,改成中文后,只有一部分出现了中文,如上图,而下图的 leaving directory等都没有出现中文。
最新在用cygwin 在windows 下编译u-boot,下了最新版的cygwin
1.7.15-1,结果里面的有些提示显示的是中文,如下图:
这让我感觉怪怪的,上网找方法,结果无果而终,因为之前装的 cygwin 1.7.9-1显示的是英文,没有出现这个现象,所以对比两个 cygwin的 etc里面的文件,结果发现在这个文件( Cygwin/etc/profile.d/lang.sh)里不一样:
Cygwin 1.7.15-1
test -z "${LC_ALL:-${LC_CTYPE:-$LANG}}" && export LANG=$(/usr/bin/locale -uU)
Cygwin 1.7.9-1
test -z "${LC_ALL:-${LC_CTYPE:-$LANG}}" && export LANG=C.UTF-8
到这里,那解决方法就很简单了,把Cygwin 1.7.15-1 中的lang.sh文件改成LANG=C.UTF-8问题解决,解决后后的图
现在问题是解决了,那么再来一下思维扩散吧,见如下两个问题:
1. 除了改 lang.sh文件,有没有其他的方法把 cygwin
1.7.15-1中显示的中文改成英文?
2. 能不能把 cygwin
1.7.9-1中显示的英文改成中文?
呵呵,下面就一起看一下吧。
1. 除了改 lang.sh文件,有没有其他的方法把 cygwin
1.7.15-1中显示的中文改成英文?
只要看一下lang.sh文件中对应的这句:
export LANG=C.UTF-8
在bash脚本中定义一个 LANG 的变量,值为 C.UTF-8
那么,我们就可以在 cygwin.bat 中的bash
--login –i 前一行加上一句:
set LANG=C.UTF-8
bash --login –i
即可解决问题。
2. 能不能把 cygwin
1.7.9-1中显示的英文改成中文?
对于这个问题,还是从那个语句出发
LANG=$(/usr/bin/locale -uU)
中的 /usr/bin/locale –uU 是什么意思呢?在终端中输入locale
–uU,如下
嘿嘿,其实对于中文系统来说就是zh_CN.UTF-8,cygwin做了一个智能检测。
那么,我们把 cygwin 1.7.9-1中的lang.sh LANG=C.UTF-8改成LANG=$(/usr/bin/locale
-uU)看看出现什么结果。
我改了一下,结果出现下图的结果:
会发现也出现了中文了,但同样,如果在cygwin.bat中的话,那就不能写成:
set LANG=$(/usr/bin/locale -uU)
而要写成:
set LANG=zh_CN.UTF-8
基本上分析完了,但是还有一个遗留问题存在就是第二个问题,改成中文后,只有一部分出现了中文,如上图,而下图的 leaving directory等都没有出现中文。
相关文章推荐
- 简单的权限管理-资源,角色,用户,部门(二)
- wordpress学习四: 一个简单的自定义主题
- jsp遍历读取xml值
- 《鸟哥的Linux私房菜》第三章 主机规划与磁盘分区
- LVS集群十种调度算法及负载均衡理论
- Java面试宝典2015版(绝对值得收藏超长版)(二)
- Django model字段类型清单
- Python图像处理(11):k均值
- shell中的条件语句
- Docker安全
- 读书杂记
- 2-16-1 平方根中的异常
- Bootstrap系列 -- 28. 下拉菜单状态
- 找女神要QQ号码
- Adding a personalized welcome message
- word2vec模型解析
- linux回到用户上次所在目录/上一级目录/用户家目录/顶级目录
- Linux下gaogent使用指南
- 下拉刷新对象RefreshObject
- Oracle数据库漏洞分析:无需用户名和密码进入你的数据库