从一个混帐控制台:我如何执行一个batch file,然后返回到混帐控制台?
我有一个名为clear.bat
的小实用程序脚本, clear.bat
我的来源做了一些家务pipe理工作。
这是一个.bat
文件,以便我可以在Windows资源pipe理器中轻松地双击它。
有时,我发现从我的Git bash(msysgit,如果这很重要)执行它更方便。
要做到这一点,我input
cmd clear.bat exit
cmd
把我的Git bash转换成一个正常的cmd
窗口,在那里我可以很容易地执行我的批处理。 当我inputexit
, cmd
环境终止,我回到了我的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
,而不必键入上面的三个命令( cmd
, clear.bat
, exit
)。 我只想从我的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 。