在Mintty中运行.bat文件



我得到了一个.bat文件,我需要执行一些脚本。我为Windows有Git Bash Mintty控制台,并想从那里运行它。从普通的窗户控制台正常工作,但在薄荷中我得到:

$ script.bat
bash: script.bat: command not found

我该怎么做?

您可能尝试执行位于当前目录中的script.bat。Windows命令提示符首先搜索当前目录,找到脚本并执行它。bash永远不会在当前目录中搜索可执行文件,它仅在$PATH中声明的路径中查找它们。

为了运行位于$PATH中未指定的路径中的程序,您必须使用包含斜线(/(的路径调用它。这意味着从当前目录运行.bat脚本,您必须将其调用为:

$ ./script.bat

cmd /c script.bat

cmd /c "$( cygpath -w "/full/path/to/script.bat" )"

请注意,MS和Cygwin中的路径具有不兼容的语法。因此,如果您需要使用绝对或相对路径运行脚本直到脚本,则需要相互转换。

update

发布答案后,我进行了一些测试,创建批处理文件并直接在Cygwin/Minty中运行。它在有没有cmd /c的情况下正常工作。$COMSPEC已设置,Cygwin版本为1.7.25(不是新鲜的,但涵盖了我的很多作品(。

相关内容

  • 没有找到相关文章