如何使用 CygWin 执行 bash 脚本?我正在尝试执行 bash 脚本作为 build.xml 的一部分。这是代码片段,
<property name="cygwinpath" value="C:/cygwin/bin/"/>
<property name="script" value="D:/tomcatserverxml"/>
<exec dir="${cygwinpath}" executable="bash.exe">
<arg value="${script}"/>
</exec>
答案1
错误消息说在路径bash.exe
中找不到C:/cygwin/bin/
。
您提到了“build.xml”,所以我假设您正在使用 Ant 进行构建。
如果您在 CygWin 内部使用 Ant,则必须使用 CygWin 路径约定。所以你必须简单地使用/bin/
作为 bash 的路径。
(在这个约定中,CygWinC:/foo/bar/
模拟/cygdrive/c/foo/bar/
了一个 *nix 之类的 filesistem,所以有一个/bin/
和一个/usr/bin/
(等等)指向正确的位置。检查 CygWin 文档:使用 Cygwin)
做一个简单的检查:
- 在 CygWin 终端中输入命令
ls /bin/bash.exe
:它列出了 bash 的可执行文件 - 打开 Windows CMD 并输入命令
dir C:\cygwin\bin\bash.exe
:它列出了 bash 的可执行文件
如果第二个逗号失败,则 CygWin 可能未安装在标准路径中, C:/cygwin/
因此请检查另一个路径,例如D:/cygwin/
.