PATH and SystemRoot oddity

Jason Curl j.m.curl@optusnet.com.au
Fri Nov 26 20:23:00 GMT 2004


Brian Dessent wrote:
> Luke Kendall wrote:
> 
> 
>>I see that by default PATH includes some entries like
>>%SystemRoot%/System32
>>
>>I also note that $SystemRoot is undefined, yet $SYSTEMROOT contains the
>>expected C:\WINDOWS value.
>>
>>This of course causes problems.  Would a backslash-style path work
>>correctly if it were properly interpolated into the PATH?  Is the %
>>notation special magic for Cygwin to handle DOS-isms?
>>
>>The case variance may be of interest, in that case.
> 
> 
> I think you're falsely attributing your errors to this.  The cygwin DLL
> takes care of all the win32 -> posix translation of the path, and it
> knows about %SystemRoot%.  If this were really the case don't you think
> tons of things would break?  Try "echo $PATH" at your shell prompt and
> you'll see that the systemroot is correctly substituted.
> 
> FWIW, I think environment variables are case-insensitive at the win32
> API level.  They preserve case but are not sensitive to it, just like
> ntfs.
> 
> Brian
> 

I have a similar question: I had to modify 'profile' to change
   $PATH=xxxx:$PATH
to
   $PATH=xxxx

How can I simply add $SYSTEMROOT:$SYSTEMROOT/system32 to this? It 
doesn't work as-is because $SYSTEMROOT = C:\Windows (and this is 
therefore not interpreted by the path). Rephrasing, what do I use to 
translate "C:\WINDOWS" to "/cygdrive/c/windows"?

I had to do this because some nasty things in my path were causing 
problems (e.g. ClearQuest/ClearCase)

TIA,
Jason.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list