这是继续这个问题: UTF8文件名和shell实用程序:utf-8和文件名的噩梦是.......
如何避免这种混淆,尤其ls
是以下列方式创建的filnames上的命令:
$ echo $LANG
en_US.UTF-8
$ mkdir test
$ cd test
$ touch á
$ touch a´
$
第一文件是通过键入来创建alt ⌥+ E,A,第二个通过键入A,alt ⌥+ shift ⇧+E
在一个xterm
窗口中,我得到:
$ ls -al
total 0
drwxr-xr-x 2 hal admin 136 Nov 11 15:52 .
drwxr-x--- 7 hal admin 4386 Nov 11 14:25 ..
-rw-r--r-- 1 hal admin 0 Nov 11 15:52 a´
-rw-r--r-- 1 hal admin 0 Nov 11 15:48 a´
$
哪个错了。
在一个Terminal
窗口中,我得到:
$ ls -al
total 0
drwxr-xr-x 2 hal admin 136 Nov 11 15:52 .
drwxr-x--- 7 hal admin 4386 Nov 11 14:25 ..
-rw-r--r-- 1 hal admin 0 Nov 11 15:52 a´
-rw-r--r-- 1 hal admin 0 Nov 11 15:48 á
$
哪个是对的。
结果与我使用的任何shell相同:bash
或zsh
。
什么
xterm
或XQuartz
设置会避免这两个文件名错误地看起来相同?
小牛队不存在此问题(MacOS X 10.9)。
echo $LANG
,我处于完全utf-8模式,直到shell级别。