Arch Linux 下如何才能使用中文命令?

Fwolf
  • 645

这个问题并不是什么工作需要,而是感觉不爽,详情是这样的:

Ubuntu 操作系统下:

$ 中文命令
中文命令: command not found

而在 ArchLinux 下却是这样:

$ 中文命令
bash: $`\234\345\456...(类似的信息)': command not found

到底是什么原因导致的这种情况?应该如何处理呢?

补充 @ 2013-04-23

bash$ locale -a
C
POSIX
en_US.utf8
zh_CN.utf8
zh_TW.utf8

但是 $ locale 命令的输出清一色的是 C 或者 en_US.UTF-8,没有 zh_CN

应该就是和 locale 有关,
并且是已安装中文 locale,不知为何没有启用。

/etc/environment 文件的内容(和 Ubuntu 下基本一样,Ubuntu 只多了 PATH 设定)是:

bashLANG="en_US.UTF-8"
LANGUAGE="en_US:en_GB:en"
LC_CTYPE="zh_CN.UTF-8"

还差哪里呢?

注:习惯使用英文界面,但是需要中文显示和输入。

补充 @ 2013-04-23 Later

还是不行,详细记录贴到 pastebin 了:

http://pastebin.com/8jc0SFTx

补充 @ 2015-03-29

很久没有关注这个问题,借新回答者的提醒,我发现现在已经正常了:

Linux f006 3.19.2-1-ARCH #1 SMP PREEMPT Wed Mar 18 16:21:02 CET 2015 x86_64 GNU/Linux

$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE=C
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES=C
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

导致那种乱码信息提示的原因依然未知。

回复
阅读 8.2k
3 个回答

看上去应该是当前的 locale 不能显示中文所致。请给出 locale 命令的输出。请尝试将 LANG 环境变量设置为 en_US.UTF-8 或者 zh_CN.UTF-8 等。

arch路过

➜ ~ 中文命令 zsh: command not found: 中文命令

麻烦你自己检查locale

我的是可以的,显示正常的中文,并且提示中文命令:command not found
我认为即使使用英文系统,也没有必要设置LC_CTYPE="zh_CN.UTF-8",相反,我曾经把这个加入到.xinit中时,会导致终端英文字体错位,去掉就好了,你可以尝试把LC_CTYPE设置成en_US.UTF-8,然后安装好wqy-microhei字体试试。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏