symbolic links to /cygdrive/X/xxx with capital letter X

Corinna Vinschen corinna-cygwin@cygwin.com
Tue Jun 30 11:14:06 GMT 2020


On Jun 12 08:06, Arthur Norman via Cygwin wrote:
> This running on Windows 10 1909 and cygwin has been updated to the latest
> version. The effect was also visible on a freshly installed minimal cygwin
> put on an almost fresh Windows 10 VM.
> 
> Cygwin these days seems to have a behaviour that confuses me regarding the
> case of a disk name:
> 
> > ln -s "/cygdrive/c/Program Files" pf1
> > ln -s "/cygdrive/C/Program Files" pf2
> > ls -l pf*
> lrwxrwxrwx 1 acn1 None 25 Jun 12 07:37 pf1 -> /cygdrive/c/Program Files
> lrwxrwxrwx 1 acn1 None 20 Jun 12 07:37 pf2 -> /mnt/C/Program Files
> > cygpath -ma ./pf1
> C:/cygwin64/home/acn1/pf1
> 
> You see from the above that when I use cygpath to convert from a cygwin name
> the drive letter C: is returned in upper case. When that ends up after
> "/cygdrive" the path behaves as I expect almost everywhere by is treated
> specially for symbolic links. This seems to be a relatively new behaviour
> and it bit me!
> 
> [Use-case: I wanted to convert cygwin paths to be "very absolute" so that eg

If you want "very absolute" paths, use something like

  ln -s /proc/cygdrive/c/...

/proc/cygdrive always exists, even if you change the cygdrive prefix.
It's a virtual symlink to the actual cygdrive prefix.


Corinna

-- 
Corinna Vinschen
Cygwin Maintainer


More information about the Cygwin mailing list