这真的很奇怪。cgypath正在返回带有空格的路径,当我尝试cd使用它们时,它们因无法找到而失败。我也注意到这种奇怪的行为pwd。观察这一点:
MyUser@MyMachine /cygdrive/c/Program Files/Java/jdk1.6.0_45
$ pwd
/cygdrive/c/Program Files/Java/jdk1.6.0_45
MyUser@MyMachine /cygdrive/c/Program Files/Java/jdk1.6.0_45
$ cd /cygdrive/c/Program Files/Java/jdk1.6.0_45
-bash: cd: /cygdrive/c/Program: No such file or directory
MyUser@MyMachine /cygdrive/c/Program Files/Java/jdk1.6.0_45
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
小智 8
您需要使用反斜杠来转义空格或引用您的路径:
cd /cygdrive/c/Program\ Files/Java/jdk1.6.0_45
Run Code Online (Sandbox Code Playgroud)
或者
cd "/cygdrive/c/Program Files/Java/jdk1.6.0_45"
Run Code Online (Sandbox Code Playgroud)
这是因为命令需要多个参数。参数用空格分隔,因此命令行认为您将参数/cygdrive/c/Program和参数Files/Java/jdk1.6.0_45传递给 command cd。