分页: 1 / 1

[求助]ssh用中文 tty用英文

发表于 : 2012-12-23 2:37
lyqf365
有个奇怪的小要求
当我用ssh登录的时候,因为是在windows下或linux desktop下运行的,所以可以正常的显示中文。

但是直接用tty来登录的时候,是不支持中文显示的,所有的字都是方框,不想添加中文支持,只想可以用英文显示就好了。

这个要求能不能实现?

系统是装在hyper-v里的,只是偶尔用到tty,平时都不看的。

Re: [求助]ssh用中文 tty用英文

发表于 : 2012-12-23 10:39
zhw2101024
应该可以在.bash_profile这个配置文件里判断环境变量把,可以分别在ssh和tty里用env查看变量,看看有没有值是ssh之类的可以做区分,然后视情况用

代码: 全选

export  LANG=en_US.UTF-8
来设置。怎么判断就得自己找了,我不熟

Re: [求助]ssh用中文 tty用英文

发表于 : 2012-12-23 12:59
PithornDawn
话说tty如何支持中文?

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-04-17 22:44
lyqf365
今年用必应一搜,发现还是去年我的贴。。。。。。。。。。并且问题没解决

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-04-17 23:47
YeLee
tty下面登陆直接判断SSH_TTY就可以了,而tty下面同样的办法,判断DISPLAY即可。

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-04-18 0:43
jtshs256
贱客提到过类似的…

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-04-19 19:29
lyqf365
好吧,搞定了,用SSH连接的时候,会有几个SSH开头的变量
这里用 SSH_TTY 做判断

下面内容加到 ~/.bashrc里就可以了

代码: 全选

if [ -z "$SSH_TTY" ]
then
export  LC_PAPER=en_US.UTF-8
export  LC_ADDRESS=en_US.UTF-8
export  LC_MONETARY=en_US.UTF-8
export  LC_NUMERIC=en_US.UTF-8
export  LC_TELEPHONE=en_US.UTF-8
export  LC_IDENTIFICATION=en_US.UTF-8
export  LANG=en_US.UTF-8
export  LC_MEASUREMENT=en_US.UTF-8
export  LANGUAGE=en_US:en
export  LC_TIME=en_US.UTF-8
export  LC_NAME=en_US.UTF-8
else
export  LC_PAPER=zh_CN.UTF-8
export  LC_ADDRESS=zh_CN.UTF-8
export  LC_MONETARY=zh_CN.UTF-8
export  LC_NUMERIC=zh_CN.UTF-8
export  LC_TELEPHONE=zh_CN.UTF-8
export  LC_IDENTIFICATION=zh_CN.UTF-8
export  LANG=zh_CN.UTF-8
export  LC_MEASUREMENT=zh_CN.UTF-8
export  LANGUAGE=zh_CN:zh
export  LC_TIME=zh_CN.UTF-8
export  LC_NAME=zh_CN.UTF-8
fi


Re: [求助]ssh用中文 tty用英文

发表于 : 2013-04-19 19:50
YeLee
假如只是消息的话,一个LC_MESSAGES就足够了。假如要全都都设置的话,设置LC_ALL就可以了,其它变量都会默认跟从LC_ALL的,假如真的要某个变量特别点的话LANG是个不错的建议。 :em20 :em20 :em20

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-06-14 22:20
wkl17
没搞明白啊..SSH和TTY有神马区别..?

一般我连接SSH都是用PuTTY..

听你们这么一说 我一下子凌乱了..囧rz

Re: [求助]ssh用中文 tty用英文

发表于 : 2013-06-14 22:20
wkl17
没搞明白啊..SSH和TTY有神马区别..?

一般我连接SSH都是用PuTTY..

听你们这么一说 我一下子凌乱了..囧rz

Re: [求助]ssh用中文 tty用英文

发表于 : 2022-01-23 16:02
huangsijun17
lyqf365 写了: 2013-04-19 19:29 好吧,搞定了,用SSH连接的时候,会有几个SSH开头的变量
这里用 SSH_TTY 做判断

下面内容加到 ~/.bashrc里就可以了

代码: 全选

if [ -z "$SSH_TTY" ]
then
export  LC_PAPER=en_US.UTF-8
export  LC_ADDRESS=en_US.UTF-8
export  LC_MONETARY=en_US.UTF-8
export  LC_NUMERIC=en_US.UTF-8
export  LC_TELEPHONE=en_US.UTF-8
export  LC_IDENTIFICATION=en_US.UTF-8
export  LANG=en_US.UTF-8
export  LC_MEASUREMENT=en_US.UTF-8
export  LANGUAGE=en_US:en
export  LC_TIME=en_US.UTF-8
export  LC_NAME=en_US.UTF-8
else
export  LC_PAPER=zh_CN.UTF-8
export  LC_ADDRESS=zh_CN.UTF-8
export  LC_MONETARY=zh_CN.UTF-8
export  LC_NUMERIC=zh_CN.UTF-8
export  LC_TELEPHONE=zh_CN.UTF-8
export  LC_IDENTIFICATION=zh_CN.UTF-8
export  LANG=zh_CN.UTF-8
export  LC_MEASUREMENT=zh_CN.UTF-8
export  LANGUAGE=zh_CN:zh
export  LC_TIME=zh_CN.UTF-8
export  LC_NAME=zh_CN.UTF-8
fi

直接为所有用户改/etc/profile的环境变量,是否合适?
另外,如何让桌面保持中文?