当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-15 17:11 

注册: 2009-01-11 0:45
帖子: 13
送出感谢: 0 次
接收感谢: 0 次
为了验证环境变量是如何发生作用的,我做了如下的实验:
我在ubuntu9.10上安装了英文和中文,并讲当前语言设置为中文。然后我讲以下语句添加到/etc/bash.bashrc结尾:
LANGUAGE=“en_US:en"
LANG="en_US.UTF-8"

运行souce /etc/bash.bashrc

再运行env,查看当前的环境变量LANG以及LANG,都已经更改为我最新设置的值。
--->刚刚又试了一下,发现这些环境变量值的更新,仅限于当前终端,如果新开终端,查看环境变量还是原来的值。怪了,难道我昨天看错了?
问题来了:之前已经打开了的应用程序是中文的,这个倒是没有问题。应用程序还不能随时切换语言。但是,我全新打开任何其他的应用程序,仍然显示中文,并没有根据最新的环境变量选择英文的显示。那么,环境变量LANG 和 LANGUAGE有什么意义呢?应用程序到底是根据什么来判断中文还是英文呢?


最后由 arrowf 编辑于 2010-03-16 17:22,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-15 22:59 
头像

注册: 2009-05-09 14:42
帖子: 513
地址: 济南
送出感谢: 0 次
接收感谢: 1
utf-8 它的作用,它可以表示全球上的大多数语言,它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度,不同的语言有不同的字符表示,即使你把语言设置成了英文,但是 utf-8 的编码不会变,依然还是中文,比如你用俄语写了一篇文章(前提是你有俄语的输入法),虽然你的默认语言是中文,但是显示的依然是俄语。再说的土一点就是可以这样理解,utf-8用1-4个字节把地球上大部分语言编号,对号入座。
建议看看这个 http://www.ruanyifeng.com/blog/2007/10/ ... utf-8.html
java是用 unicode 来写的,就是utf-16,可以表示更多的语言。。。。。。 :em06 解释的不太好,多包涵。。。。。。我天生不是当老师的料。。。


_________________
废土狂猪 :看啥 ,没见过网管吗,再看 吃了你!


页首
 用户资料  
 
3 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-15 23:36 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
你新设置的变量只对新的shell起作用
已有的是不会变的


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-16 10:42 

注册: 2009-01-11 0:45
帖子: 13
送出感谢: 0 次
接收感谢: 0 次
但是我用echo $LANG 和 echo $LANGUGE 查看出来的值确实已经更新了,为什么这种环境变量的变化没有体现到应用程序上呢?
全新打开的应用程序仍然获得的是gnome session启动时加载的LANG/LANGUAGE值,这个值到底是保存在什么地方的呢?


页首
 用户资料  
 
5 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-16 10:43 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
X的软件,可不一定使用你bash的export设置。应该去gconf里面找。X的软件,不单纯的。


_________________
● 鸣学


页首
 用户资料  
 
6 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-16 11:06 

注册: 2009-01-11 0:45
帖子: 13
送出感谢: 0 次
接收感谢: 0 次
eexpress 写道:
X的软件,可不一定使用你bash的export设置。应该去gconf里面找。X的软件,不单纯的。


我也在怀疑其实这些应用程序根本就没有使用LANG/LANGUAGE,但是我对这个不太熟悉,我想知道这些软件是怎么取得当前的语言环境的。如果用gconf,总得有个接口吧,这些东西应该去哪儿找呢?


页首
 用户资料  
 
7 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-16 11:08 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
arrowf 写道:
但是我用echo $LANG 和 echo $LANGUGE 查看出来的值确实已经更新了,为什么这种环境变量的变化没有体现到应用程序上呢?
全新打开的应用程序仍然获得的是gnome session启动时加载的LANG/LANGUAGE值,这个值到底是保存在什么地方的呢?


你加到 /etc/environment 然后重启看看, 或者在登陆界面选语言


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
8 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-03-16 11:26 

注册: 2009-01-11 0:45
帖子: 13
送出感谢: 0 次
接收感谢: 0 次
BigSnake.NET 写道:
arrowf 写道:
但是我用echo $LANG 和 echo $LANGUGE 查看出来的值确实已经更新了,为什么这种环境变量的变化没有体现到应用程序上呢?
全新打开的应用程序仍然获得的是gnome session启动时加载的LANG/LANGUAGE值,这个值到底是保存在什么地方的呢?


你加到 /etc/environment 然后重启看看, 或者在登陆界面选语言


重启以后当然就没问题了。

现在的问题就是,如果不重启,如何能够让我对特点环境变量(具体来说就是语言相关的)的改动立刻生效。


页首
 用户资料  
 
9 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-12-12 15:08 
头像

注册: 2010-11-30 21:28
帖子: 17
送出感谢: 3
接收感谢: 0 次
arrowf 写道:
BigSnake.NET 写道:
arrowf 写道:
但是我用echo $LANG 和 echo $LANGUGE 查看出来的值确实已经更新了,为什么这种环境变量的变化没有体现到应用程序上呢?
全新打开的应用程序仍然获得的是gnome session启动时加载的LANG/LANGUAGE值,这个值到底是保存在什么地方的呢?


你加到 /etc/environment 然后重启看看, 或者在登陆界面选语言


重启以后当然就没问题了。

现在的问题就是,如果不重启,如何能够让我对特点环境变量(具体来说就是语言相关的)的改动立刻生效。


我刚在10.10装了GE,但是不支持中文显示,看了官方帮助文档,又搜索到这里的帖子,有了答案。
在终端输入

LANG=en_US googleearth

启动GE,英文界面,成功。
但是关闭后从菜单打开,就还是中文的。
结论,在终端对LANG的修改只是临时的,类似DOS的set吧
感觉我的经历应该对你的问题有帮助,试试吧。 :em11


页首
 用户资料  
 
10 楼 
 文章标题 : Re: ubuntu下环境变量是如何起作用的
帖子发表于 : 2010-12-12 15:18 
头像

注册: 2008-04-26 12:41
帖子: 11000
送出感谢: 11
接收感谢: 38
:em09


_________________
[新手必读]wubi安装常见问题(FAQ)
[分享]装双系统的同学必看——Windows与Linux系统共享交换分区的方法
kde下唯美的暗黑内透主题(无需编译)
无穷老机上的Trinity Desktop Environment


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 10 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译