昨天电脑锁屏坏了要进 Ctrl+Alt+F2,然后回忆起了一个老问题。这个命令行界面是无法显示非英文字符的。所以我的中文系统的命令输出全是方块。
有没有方法可以让这个界面显示中文呢?
还有怎么在这个界面输入中文呢?
查了一下发现 Linux 内核不支持也不打算支持,所以只能想办法强制英文了。
昨天电脑锁屏坏了要进 Ctrl+Alt+F2,然后回忆起了一个老问题。这个命令行界面是无法显示非英文字符的。所以我的中文系统的命令输出全是方块。
有没有方法可以让这个界面显示中文呢?
还有怎么在这个界面输入中文呢?
查了一下发现 Linux 内核不支持也不打算支持,所以只能想办法强制英文了。
fb…term?
在命令前面加 LANG=en_US.UTF-8,输出会显示成英文,例如:
LANG=en_US.UTF-8 ls -l
fbterm,另外我一般都是直接export LC_ALL=en_US.UTF-8
我还在使用自己编译的打过cjktty补丁的内核(使用kernel stable源里的kernel source,目前我已经把补丁手动适配到5.0了),控制台下中文显示无压力。。。
有没有方法让除了桌面 tty1 或 tty7 之外的 tty 都默认显示英文呢?
我是在终端配置文件里写上
# locale
if [[ $(tty) == /dev/tty* ]]; then
setfont /usr/share/kbd/consolefonts/suse12x22.psfu.gz
export LC_ALL="en_US.UTF-8"
export LANGUAGE="en_US.UTF-8"
export LANG="en_US.UTF-8"
else
export LC_ALL="zh_CN.UTF-8"
export LANGUAGE="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
fi
这个看起来很棒啊
忘了从那儿看到的操作了,
那直接bashrc搞export LC_ALL就行了
智能,可惜背不过,所以每次还是手敲一行LC_ALL。话说另外俩我记得都是被LC_ALL override的?
去做了做功课
貌似LC_ALL
就只改变了LC_XX
On GNU systems,
LC_ALL=C
andLC_ALL=POSIX
(orLC_MESSAGES=C|POSIX
) override$LANGUAGE
, whileLC_ALL=anything-else
wouldn’t.
试了试这两种情况也并没有改变LANGUAGE/LANG
(至少没有立即改变,也不知道是不是我操作不对
哦…只有=C会,神秘操作(
看来下次再遇到问题,就顺便把另外俩都搞了吧。一般我遇到的都吃LC_ALL…