如何使用脚本启动特定工作目录的Git Bash窗口?
如何使用脚本(bash或Windows批处理)启动具有指定工作目录的新的Git Bash窗口?
我的目标是从单个脚本启动多个Git Bash窗口,每个脚本都设置为不同的工作目录。 这样,我可以在启动计算机后快速开始工作,而无需打开Git Bash窗口并将每个窗口导航到正确的工作目录。
Git Bash使用cmd.exe
作为它的terminal加上由sh.exe
提供的MSYS / MinGW扩展,这是一种cmd.exe
包装。 在Windows中,使用start
命令启动一个新的terminal。
因此,一个用特定的工作目录启动一个新的Git Bashterminal的shell脚本是:
(cd C:/path/to/dir1 && start sh --login) & (cd D:/path/to/dir2 && start sh --login) &
一个等效的Windows批处理脚本是:
C: cd \path\to\dir1 start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login D: cd \path\to\dir2 start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login
要获得与从开始菜单启动的Git Bash相同的字体和窗口大小,将开始菜单快捷方式设置复制到命令控制台默认值(更改默认值,打开cmd.exe
,左键单击左上angular图标,并select默认)。
另一个选项是创build具有以下属性的快捷方式:
目标应该是:
“%SYSTEMDRIVE%\ Program Files(x86)\ Git \ bin \ sh.exe”–login
开始是你希望你的Git Bash提示符启动的文件夹。
试试–cd =选项。 假设你的GIT Bash驻留在C:\ Program Files \ Git中,它将是:
"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"
如果在registry项中使用,则可以使用%1提供文件夹参数:
"C:\Program Files\Git\git-bash.exe" --cd="%1"
让我们来看看@Drew Noakes的答案:
目标:
"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo
cd
参数应该是如何指定工作目录的选项之一。
另外请注意,我没有任何--login
参数,而是使用另一个额外的应用程序,专用于SSH密钥: Pageant(PuTTY身份validation代理) 。
开始于:
C:\GitRepo
就像@Drew Noakes早些时候提到/显示的一样,我也是这样使用它。
快捷键:
Ctrl + Alt + B
这种快捷方式是Windows中另一个不太知名的function。 但有一个限制:为了让快捷方式生效,它必须放置在用户的子目录中:桌面是好的。
如果您不希望它可见,但仍然可激活,请将此.lnk
文件放置到快速启动文件夹中,因为该目录是针对这种快捷方式的。 (不pipe是否显示在桌面上) #76080 #3619355
"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
这是可以在Run dialog box
直接执行的命令(快捷键是win + R ),也可以很好地保存为.bat
脚本:
cmd /c (start /d "/path/to/dir" bash --login) && exit
我不熟悉Git Bash,但是假设它是一个驻留在/path/to/my/gitshell
的git shell(例如git-sh
),并且你最喜欢的terminal程序叫做`myterm',你可以脚本如下:
(cd dir1; myterm -e /path/to/my/gitshell) & (cd dir2; myterm -e /path/to/my/gitshell) & ...
请注意,用于执行的参数-e
可能与您最喜欢的terminal程序命名不同。
Windows 10
这基本上是@ lengxuehx的答案,但更新为Win 10,并假设你的bash安装是从git Bash for Windows从git官方下载 。
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
我失去了我的Git Bash的上下文菜单项作为我的命令从registry设置运行后最终使用此。 如果你对此感到好奇,我就这样做了:
- 在
HKEY_CLASSES_ROOT\Directory\Background\shell
的shell
键中创build一个名为Bash
的新键 - 将string值添加到
Icon
(而不是新的密钥!),这是git-bash.exe的完整path,包括git-bash.exe部分。 您可能需要用引号将其封装起来。 - 将
Bash
的默认值编辑为要在上下文菜单中使用的文本 - 添加一个子键到
Bash
调用command
- 将
command
的默认值修改为cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
然后,你应该能够closuresregistry,并开始使用Git Bash从任何地方是一个真正的目录。 例如, This PC
不是一个真正的目录。