最近我在Cygwin中学习使用Linux的命令,但当进入Windows目录的时候看到所有中文文件都变成了“?????”。于是我上网找了一下解决办法,后来发现网上的方法虽然让Cygwin支持了中文,可很多英文倒变成了乱码如命令“ls -l”中的total、man查看帮助的部分英文。于是自己尝试修改原来网上的配置,找到了一个最终的解决办法。虽然不敢说是完全解决了,但至少我用了一天还没发现有乱码存在,呵呵。
配置步骤:
1.在用户目录(cd ~)里的.bash_profile文件末尾添加如下代码
export LC_ALL=en_US.UTF-16
export LC_CTYPE=en_US.UTF-16
export LANG=en_US.UTF-16
export XMODIFIERS=@im=Chinput3
stty cs8 -istrip
stty pass8
export LESSCHARSET=latin1
2.同样是~目录,去掉.inputrc文件中一下代码的注释(前面的#号)
set meta-flag on
set convert-meta off
set input-meta on
set output-meta on
3.还是~目录,.bashrc文件中添加代码
alias ls='ls --color --show-control-chars'
4.重启Cygwin。
配置完成了,支持中文并消除了所有的乱码。
5、如果是域用户,需要导入域的用户组和用户(我做操作时用户已登录域)。
mkgroup -d >> /etc/group
mkpasswd -d -u 要导入的域用户名 >> /etc/passwd