出一个git控制台:我怎么执行批处理文件,然后返回到控制台的git?(Out of a git co

2019-06-17 16:02发布

我有一个小工具,脚本调用clear.bat ,做我的信息来源获取某些看家的工作。

这是一个.bat文件,这样就可以很容易地在Windows资源管理器中双击它。

有时候,我觉得它更方便的从我的Git的bash执行它(msysgit,如果该事项)。

要做到这一点,我键入

cmd
clear.bat
exit

cmd打开我的Git的bash成一个正常的cmd窗口,在这里我可以很容易地执行我的批处理。 当我输入exit ,在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

编辑:
只注意到后坏了。

我想是执行clean.bat而不必键入上述(三个命令,从GIT中的bash内cmdclear.batexit )。 我只是想执行.bat从我的Git的bash中的文件。 显而易见的方法是创建一个单独的.sh文件,做同样的工作,但是这将导致双码。


编辑2:当我执行cmd /C clean.bat ,该GIT中的bash变成纯CMD环境,而仅显示该提示。 该文件clean.bat没有得到执行。 这是一样的,如果我只需键入cmd

此外,添加/debug开关确实几乎一无所有。 好像只有cmd获取评估以及所有参数都得到忽略。

Answer 1:

逛了一下打的多后,我找到了自己的解决方案:

cmd "/C clean.bat"

是卓有成效的。 但我不知道,为什么...



Answer 2:

./clear.bat会做的伎俩。



Answer 3:

该混帐的Windows (msysGit已经通过GIT中的Windows取代1 ) 常见问题解答说,你有3种选择:

  • 运行有使用问题的程序winpty效用。 这使您可以继续使用更好mintty终端,但如果你需要很多程序解决方法可以变得难以处理。

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

  • 安装和使用ConEmu 。



Answer 4:

我喜欢start clean ,它会打开一个新的窗口,键入cmd。 这种方法有一些好处:

  • CMD.EXE得到本地控制台
  • 新的控制台有一个本地的Windows字符编码(如CP1251 VS UTF8)


文章来源: Out of a git console: how do I execute a batch file and then return to git console?