|

Linux在tty中使用英文,在x-window中使用中文

目录
    本文上次更新于 1556 天前,其内容可能已经过时,如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

    2018-2-9
    系统:debian 9

    如果把系统语言设置为中文,则在tty下运行没有的命令的话,会出现乱码,当然我们可以安装第三方工具(如fbterm/zhcon)来支持中文的显示,本人以前使用过zhcon,体验效果不是太好,主要是字体和中文输入.

    为了解决tty下遇到中文乱码的问题,当然这里所说的并非是解决所有中文乱码(像显示中文文件时出现乱码不在这个范围),如果要想解决所有的中文乱码问题,可以安装上面提到的第三方工具,或者给内核打上中文显示的补丁(本人没有尝试过).本次解决方法主要是利用login shell(如tty)和non-login shell(如x-window)登录时所读取到的文件不同来实现tty下系统语言为英文,而x-window下显示为中文.什么是non-login shell和login shell,可以看这儿.

    首先以root身份在/etc/目录下创建一个文件language

    su root
    cd /etc/ 
    vim language

    里面填入下面的内容(修改这两个环境变量),

    #!/bin/sh
    LANG="en_US.utf-8"
    LANGUAGE="en_US.utf-8"

    然后在~/.profile(或/etc/profile)中最后一行加入

    source /etc/language

    注意:每个用户家目录下的.profile文件都要加入

    这样,重启后,以login shell方式(如tty)直接登录时,输入locale命令,就会发现系统语言变成了英文,而以non-login shell方式(如x-window)登录时,任然是中文.

    注意:在tty下切换用户,切换的那个用户是属于non-login shell方式的,因此输入locale,语言还是中文,可以参考我写的另一篇文章Linux下的环境变量问题

    如果在这个过程中遇到了其它问题,欢迎在评论区留言,或者Google一下,也欢迎把具体的解决方法留在评论区,以供后来者参考

    欢迎转载,不需注明出处,就说是你写的

    如果在这个过程中遇到了其它问题,欢迎在评论区留言,如果你已解决,也欢迎把具体的解决方法留在评论区,以供后来者参考
    ×

    感谢您的支持,请扫码打赏

    微信打赏 支付宝打赏
    guest
    0 评论
    内联反馈
    查看所有评论