On 2016-09-20 18:33, Ken Brown wrote:
I've set up my Cygwin installation to be case sensitive, following the
instructions at
https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-casesensitive
But it doesn't seem to be working as I expect. For example:
$ mkdir a
$ mkdir A
$ ls -al [aA]
a:
total 100
drwxr-xr-x+ 1 kbrown None 0 2016-09-20 20:18 ./
drwxrwxrwt+ 1 kbrown-admin None 0 2016-09-20 20:19 ../
A:
total 100
drwxr-xr-x+ 1 kbrown None 0 2016-09-20 20:19 ./
drwxrwxrwt+ 1 kbrown-admin None 0 2016-09-20 20:19 ../
$ mv a A
mv: cannot move 'a' to a subdirectory of itself, 'A/a'
Why does mv think that A and a are the same directory?
Here's another example, where mv should simply do a rename, but it
doesn't:
$ rmdir A
$ mv a A
$ ls -al a
total 100
drwxr-xr-x+ 1 kbrown None 0 2016-09-20 20:18 ./
drwxrwxrwt+ 1 kbrown-admin None 0 2016-09-20 20:30 ../
$ ls -al A
ls: cannot access 'A': No such file or directory
cygcheck output is attached.
Windows Win32 and WoW are case insensitive but case preserving where the
underlying
filesystem supports case sensitivity; POSIX subsystem is case sensitive:
https://support.microsoft.com/en-us/kb/100625 (N.B. NT 3.1!)
Nitty gritties:
http://www.nicklowe.org/2012/02/understanding-case-sensitivity-in-windows-obcaseinsensitive-file_case_sensitive_search/