cygwin cygdrive paths and Windows Command Prompt

1

Possible Duplicate:
cygwin cygdrive paths and Windows Command Prompt

I'm having a weird issue with cygwin acting inconsistently between installations, specifically scp. I have c:\cygwin\bin in my Windows PATH in both cases. When I run the following command from a Windows Command Prompt, however, I get very different results between the two installations:

scp /cygdrive/c/something.txt User@server:${HOME}/something.txt

On the one machine it transfers the file just fine, but on the other machine I get an error:

/cygdrive/c/something.txt: No such file or directory

However, if I execute the command this way on the machine that gave me the error, it transfers just fine:

scp /c/something.txt User@server:${HOME}/something.txt

Why the differences? Is there something I need to configure within cygwin to make this work with /cygdrive/c?

I've tried running mount --change-cygdrive-prefix /cygdrive but that doesn't fix the problem.

UPDATE: Here's something more interesting. If I do ls /c from a Windows command prompt I get what you would expect, as list of everything in C:. However, ls /cygdrive/c says that it doesn't exist. Running those commands from the cygwin bash yields exactly the opposite behavior.

Matt Baker

Posted 2010-09-28T22:14:12.967

Reputation: 203

Question was closed 2011-08-31T18:06:40.293

Have you ruled out different (non-Cygwin) versions of ls and scp, which you don't see from inside bash because it comes from Cygwin and puts Cygwin /bin ahead of PATH on startup? – Gilles 'SO- stop being evil' – 2010-09-29T00:06:23.847

post this as an answer and I'll get you some rep. This problem was fixed when I did set PATH=C:\cygwin\bin;%PATH% instead of `set PATH=%PATH$;C:\cygwin\bin. – Matt Baker – 2010-09-29T00:14:51.350

You need to say @Gilles if you want someone to see a comment (unless it's attached to an answer or question of theirs). – Paused until further notice. – 2010-09-29T00:29:06.910

Oops, may bad. Thanks @Gilles. If you post this as an answer I'll get you some rep. This problem was fixed when I did set PATH=C:\cygwin\bin;%PATH% instead of set PATH=%PATH$;C:\cygwin\bin – Matt Baker – 2010-09-29T00:46:34.223

Answers

2

It looks like your scp and ls commands are not Cygwin versions. Presumably, you start bash, your startup scripts change the PATH to put the Cygwin /bin in front, whereas otherwise your PATH has non-Cygwin versions of scp and ls early on.

Gilles 'SO- stop being evil'

Posted 2010-09-28T22:14:12.967

Reputation: 58 319