如何导航到C:\ Cygwin中的目录?

我试图安装PyQt4,所以我可以搞砸了。 安装指南说我必须安装Sip 。 安装Sip的最后一步是使用make install命令。 Windows没有,所以我查了一下,我看到的所有东西都说要安装Cygwin。 所以我做了。 但是… sip在C:\Python31\sip

我可以从Cygwin命令运行这个吗? 如果是这样,我该怎么做?

或者我可以从正常的Windows命令提示符运行此? 如果是这样,我该怎么办呢?

使用:

 cd /cygdrive/c 

我会添加一些可以帮助我用cygwin很多的东西。 每当build立一个新的系统,我总是这样做

 ln -s /cygdrive/c /c 

这会创build一个到/cygdrive/c的符号链接 ,其中包含一个名为/c的新文件(在主目录中)

那么你可以在你的shell中做到这一点

 cd /c/Foo cd /c/ 

非常便利。

cd c:现在在cygwin中支持

你已经接受了一个答案,但我只是想我会提到,以下也适用于Cygwin:

 cd "C:\Foo" 

我认为cd /cygdrive/c方法更好,但有时知道你也可以这样做。

正如你可能想要经常这样做,添加别名到你的.bashrc文件,如:

 alias cdc='cd /cygdrive/c' alias cdp='cd /cygdrive/p' 

然后你可以在命令行上input:

 cdc 

在相关说明中,您可能还会喜欢:

 shopt -s autocd 

这使您可以通过在目录中inputcd来指定目录

 [user@host ~]$ /cygdrive/d cd /cygdrive/d [user@host /cygdrive/d]$ 

要坚持下去,你应该把它添加到你的~/.bashrc

在.bashrc中定义一个variables:

 export C=/cygdrive/c 

那么你可以使用

 cd $C/ 

和选项卡autocompletes正确(请包括/在最后)

你可以试试这个

 /cygdrive/c/directoryname 

你可以使用cd C:/ Users /../ ..

在HOME文件夹中创build一个名为“overrideBashCdForWindowsPaths”的文件。 将以下行粘贴到该文件并保存:

 #!/bin/bash function cd() { CD_PATH="$(history | tail -1 | sed -e "s,.*${FUNCNAME[0]}\s*,,g")" if [ -z "${CD_PATH}" -o "${CD_PATH}" = "~" ]; then CD_PATH="${HOME}" fi builtin cd "$(cygpath "$CD_PATH")" } 

接下来,当您在HOME文件夹中时,在terminal中键入以下命令:

 echo ". overrideBashCdForWindowsPaths" >> .bashrc 

closures你的terminal并打开一个新的。 您现在可以通过简单的input轻松地切换到Windows文件夹

 cd C:\Python31\sip 

该脚本读取最后一个命令,提取path并将其传递给Cygwin的path转换工具。 通过给函数“cd”命名,我们sorting了Bash内置的“cd”,并将实际的调用委托给最后一行。

这里值得一提的是,Cygwin的cygpath仍然不能正确处理间隔的Windowspath,特别是在Cygwin下运行的Bash脚本。 诀窍是了解Cygwin如何解释Bash脚本中的引号。

以下不起作用:

 #!/bin/bash TBDIR="/cygdrive/c/Program\ Files\ \(x86\)/MyDir/" if [ -d "${TBDIR}" ]; then echo "Found MyDir directory at: ${TBDIR}" cd "$TBDIR" else echo "MyDir program directory not found!" echo "Wrong DIR path: ${TBDIR}" exit 1 fi 

但是这确实有效:

 #!/bin/bash # Cygwin-ism: No quotes! TBDIR=/cygdrive/c/Program\ Files\ \(x86\)/MyDir/ if [ -d "${TBDIR}" ]; then ... 

据我所知,目前还没有已知的解决方法使用cygpath ,它可以正确处理空格在bash脚本上下文中,但是您可以在脚本中使用引号。

我喜欢的是: cd C:

有像linux的感觉,然后做:

 ln -s /cygdrive/c/folder ~/folder 

并使用这个: ~/folder/..