> 如何在shell里输入中文呢?

你有没有加上中文环境?
1)bash shell:
在/etc/profile或者$HOME/.profile文件里加上
  stty cs8 -istrip
  stty pass8
  # export LANG =C
  export LC_CTYPE=iso-8859-1
2)在$HOME/.inputrc里加上
   set convert -meta off
   set output -meta on
修改之后也不必重新启动,只需新开一个虚拟终端即可生效,
或者logout出来再进去。

注:请参考stty,readline的man page以及Locales mini-HOWTO等。

--------

Linux有多文种支持,但是主要是各种欧洲文字,如果不明确指出
的话就默认为ASCII。ASCII是7位编码,遇到不可打印的字符od就
输出反斜杠加八进制数。要用cxterm搞中文你必须让其他的应用
程序明白它不是在处理ASCII码。办法是:

1,设置环境变量LANG为zh表示中文。虽然Linux的locale目前
  没有很好的中文支持,但它至少明白不是ASCII。
2,设置环境变量LESSCHARSET为latin1。这使得less程序变成
  8位透明,可以显示中文。

你将LANG设置成de然后cp一个文件到你没权限的目录看看,它
会跟你说德国话。 :-)有一天它会跟你说中国话,如果你说
LANG为zh。(目前还不会) |-(

min
----

注:至于编辑中文嘛,我一般用joe -asis filename或者jstar(指向joe的连接)
由于joe的热键与wordstar/wps相同,我比较熟悉。当然emacs也有中文支持的mule,
还有汉化的vi,pine的pico也可以支持8bit码等等。
另外用ls -N可以看到中文文件名,但对fat/fat32无效,nls_iso8859_1.o模块已经
加载,我估计需要一个nls_cp936.o来支持FAT里的中文字符集,谁来写一个?

顺便提一下,如果你用telnet上BBS时中文没有正确显示的话,你可以用telnet -8 bbs.xxx.xxx
或者在Telnet里发命令set b后再连接BBS站点。
 
 
 

本文转自中文Linux论坛