cygpath不能正确转换Windows路径

时间:2013-04-13 23:53:12

标签: cygwin cygpath

命令行shell

echo %PIG_HOME%
C:\cygwin\usr\lib\pig

cygwin的

echo $PIG_HOME
C:\cygwin\usr\lib\pig

echo $( cygpath -u "$PIG_HOME" )
/usr/lib/pig

cd $( cygpath -u "$PIG_HOME" )
-bash: cd: /usr/lib/pig: No such file or directory

问题:为什么cygpath没有将其转换为/cygdrive/c/cygwin/usr/lib/pig

更新

pig文件夹的路径是正确的。

命令行shell

C:\Users\john.doe> cd %PIG_HOME%
C:\cygwin\usr\lib\pig>

cygwin的

john.doe@COMPUTER ~
$ cd /cygdrive/c/cygwin/usr/lib/pig/

john.doe@COMPUTER /cygdrive/c/cygwin/usr/lib/pig
$

3 个答案:

答案 0 :(得分:2)

使用Cygwin,

C:\cygwin\lib\pig = /usr/lib/pig

C:\cygwin\usr\lib\pig = /cygdrive/c/cygwin/usr/lib/pig

此设置是设计使然。

C:\cygwin\usr\lib文件夹不是由任何软件包创建的,也不应由您创建。

答案 1 :(得分:0)

在终端窗口中输入mount

我的c:\cygwin\binc:\cygwin\lib\分别安装在/usr/bin/usr/lib。我怀疑您的c:\cygwin\usr\lib已安装在/usr/lib

因此," unix" c:\cygwin\usr\lib\pig的路径为/usr/lib/pig

答案 2 :(得分:0)

您是否尝试过选项“ -m,--mixed:类似于--windows,但带有常规斜杠(C:/ WINNT)”

$ cd /cygdrive/c/cygwin64/home
$  cygpath -m $(pwd)
C:/cygwin64/home
相关问题