我试图在Windows 7上使用Cygwin执行.sh文件,但出现错误cannot execute binary file

这是我在Cygwin命令提示符窗口中写的内容:

$ bash cygpath --unix C:\Users\\MyName\\Documents\\MyProject\\dygraphsMaster\\generate-combined.sh

结果是:
/usr/bin/cygpath: /usr/bin/cygpath: cannot execute binary file

最佳答案

将Windows路径用双引号(")括起来,并将整个cygpath命令用反引号(`)括起来。

我的例子:

> pwd
/cygdrive/c/TestFolder/ScriptInsideHere

> ls -al
total 1
drwx------+ 1 Administrators Domain Users  0 Aug 25 13:08 .
drwx------+ 1 Administrators Domain Users  0 Aug 25 13:13 ..
-rwx------+ 1 Administrators Domain Users 29 Aug 25 13:08 hello_world.sh

> cat hello_world.sh
#!/bin/bash
echo Hello World

运行上面的命令:

> bash `cygpath --unix "C:\TestFolder\ScriptInsideHere\hello_world.sh"`
Hello World

10-06 00:54