从一个混帐控制台:我如何执行一个batch file,然后返回到混帐控制台?

我有一个名为clear.bat的小实用程序脚本, clear.bat我的来源做了一些家务pipe理工作。

这是一个.bat文件,以便我可以在Windows资源pipe理器中轻松地双击它。

有时,我发现从我的Git bash(msy​​sgit,如果这很重要)执行它更方便。

要做到这一点,我input

 cmd clear.bat exit 

cmd把我的Git bash转换成一个正常的cmd窗口,在那里我可以很容易地执行我的批处理。 当我inputexitcmd环境终止,我回到了我的Git bash中。

这可以用更简单的方式实现吗?

自从文档说,我尝试了cmd /C clean.bat

 Syntax CMD [charset] [options] CMD [charset] [options] [/c Command] CMD [charset] [options] [/k Command] Options /C Run Command and then terminate /K Run Command and then return to the CMD prompt. This is useful for testing, to examine variables 

编辑:
刚注意到post坏了。

我想要的是从Git bash中执行clean.bat ,而不必键入上面的三个命令( cmdclear.batexit )。 我只想从我的Git bash中执行.bat文件。 显而易见的方法是创build一个单独的.sh文件来完成相同的工作,但这会导致双重代码。


编辑2:当我执行cmd /C clean.bat ,Git bash变成了一个普通的CMD环境,只显示提示符。 clean.bat文件不会被执行。 就像我inputcmd

另外,添加/debug开关确实没有任何东西。 似乎只有cmd得到评估,所有进一步的参数被忽略。

在玩了更多之后,我自己find了解决scheme:

 cmd "/C clean.bat" 

做的伎俩。 但我不知道,为什么…

./clear.bat将会诀窍。

Windows的Git (msysGit已被Git代替Windows 1 ) 常见问题解答表示您有3个选项:

  • 使用winpty工具运行有问题的程序。 这使您可以继续使用更好的minttyterminal,但是如果您需要许多程序的解决方法,可能会变得笨重。

  • 修改Git Bash的快捷方式直接运行bash而不用mintty所以它使用默认的控制台主机,并将其configuration为“快速编辑”,合理的大小和回滚以及合适的Unicode字体。 你仍然必须忍受控制台主机的其他怪癖。

  • 安装和使用ConEmu 。