"MS-DOS style path detected" triggered by escaped $ in path
Tue Nov 27 07:43:00 GMT 2012
On Nov 26 10:44, Adam Dinwoodie wrote:
> If I use paths that contain $ symbols, and backslash-escape them, I start
> seeing warnings about MS-DOS style paths in Cygwin bash. For example, where I
> hit <tab> after the .ssh/:
> $ cp //pcname/C\$/cygwin/home/add/.ssh/cygwin warning:
> MS-DOS style path detected: //pcname/C\$/cygwin/home/add/.ssh/
> Preferred POSIX equivalent is: //pcname/C/$/cygwin/home/add/.ssh/
> CYGWIN environment variable option "nodosfilewarning" turns off this warning.
> Consult the user's guide for more details about POSIX paths:
> I believe the path I entered, //pcname/C\$/cygwin/home/add/.ssh/, is valid.
> The equivalent MS-DOS style path would be \\pcname\C$\cygwin\home\add\.ssh\.
> This appears to simply be an erroneous warning; everything else I tried works,
> including tab-completion, calls to cp or ls or similar.
This is a bash problem, apparently. In tcsh you'll never see this. The
above message is printed by Cygwin's path handling. That means, bash
has given the path to some POSIX function *with* the backslash included.
Evaluating escape sequences is not the job of the system functions, but
of the caller, so I'd expect that the path gets de-escaped by bash
before calling the system function, but that's apparently not the case.
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin