如何在Windows上从命令行启动MingW控制台(GitBash)?

Ati*_*din 9 windows command-line batch-file git-bash

我正在尝试使用批处理文件自动化我的工作环境.我遇到了无法从命令行启动MingW64控制台的问题.

start "" "%ProgramFiles%\Git\bin\sh.exe" --login工作正常,但似乎打开一个不同于我正在寻找的shell窗口.我会用图片解释一下.

它打开的是一个集成了bash的默认cmd样式窗口.此窗口甚至无法调整大小
在此输入图像描述

我想要的是
在此输入图像描述

我试图使用该命令,start "" "%ProgramFiles%\Git\git-bash.exe" --login -i -c /bin/bash但似乎在打开后快速关闭shell.如果我从资源管理器执行相同的文件,shell不会自动关闭.

这是我的完整批处理文件以供参考

@echo on

REM start PHP and MYSQL
start "" mysql_server\UniServerZ\UniController.exe start_both

REM Open PhpMyAdmin
start "" http://localhost/us_opt1/

REM Open Folders
start "" %SystemRoot%\explorer.exe "E:\work\"

REM Open Git Bash Instance
:: in order to open the shell in that path
cd E:\work\
:: start "" "%ProgramFiles%\Git\bin\sh.exe" --login
start "" "%ProgramFiles%\Git\git-bash.exe" --login -i -c /bin/bash

REM start sublime text
start "" "E:\Sublime Text Build 3083 x64\sublime_text.exe"
Run Code Online (Sandbox Code Playgroud)

Von*_*onC 11

git-bash.exe -i -c "/bin/bash"似乎工作得更好.
此问题说明了各种其他调用方式git-bash.exe,但结论是:

运行git-for-windows的首选方法是使用git-cmd.exe:

c:\git\git-cmd.exe --command=usr/bin/bash.exe -l -i
Run Code Online (Sandbox Code Playgroud)

然而,这仅在当前cmd中打开会话,同时git-bash.exe打开一个新窗口.

结合这个问题(打开一个新的控制台)和这个(避免两个CMD窗口),我会使用:

start /b cmd /c git-bash.exe -i -l -c "/bin/bash"
Run Code Online (Sandbox Code Playgroud)

OP与Atif穆罕默德Ameenuddin报告在评论这个细的工作:

start "" "%ProgramFiles%\Git\git-bash.exe"
Run Code Online (Sandbox Code Playgroud)