97

如何使用脚本(Bash 或 Windows 批处理)启动具有指定工作目录的新 Git Bash 窗口?

我的目标是从单个脚本启动多个 Git Bash 窗口,每个窗口设置到不同的工作目录。这样我可以在启动计算机后快速开始工作,而不必打开 Git Bash 窗口并将每个窗口导航到正确的工作目录。

我不是在问如何更改默认工作目录,就像这个问题一样,而是从脚本启动一个或多个具有不同工作目录的终端窗口。

4

10 回答 10

70

另一种选择是创建具有以下属性的快捷方式:

在此处输入图像描述

目标应该是:

"%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login

Start in是您希望启动 Git Bash 提示符的文件夹。

于 2015-08-20T18:40:09.883 回答
59

试试 --cd= 选项。假设您的 GIT Bash 位于 C:\Program Files\Git 中,它将是:

"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"

如果在注册表项中使用,文件夹参数可以与 %1 一起提供:

"C:\Program Files\Git\git-bash.exe" --cd="%1"

于 2017-01-15T17:08:54.597 回答
48

Git Bashcmd.exe用于其终端以及 MSYS/MinGW 的扩展,这些扩展由sh.exe一种cmd.exe包装器提供。start在 Windows 中,您使用该命令启动一个新终端。

因此,启动具有特定工作目录的新 Git Bash 终端的 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,左键单击左上角图标,然后选择默认值)。

于 2013-11-12T04:21:07.187 回答
31

让我们补充一下@Drew Noakes的答案:

目标:

"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo

cd参数应该是如何指定工作目录的选项之一。

另请注意,我在--login那里没有任何参数:相反,我使用了另一个专门用于 SSH 密钥的额外应用程序:Pageant (PuTTY authentication agent)

开始于:

C:\GitRepo

同样可能的方式,正如@Drew Noakes 在这里提到/显示的那样,我也使用它。

快捷键:

Ctrl + Alt + B

此类快捷方式是 Windows 中另一个鲜为人知的功能。但是有一个限制:要让快捷方式生效,它必须放在用户子目录的某个地方:桌面就可以了。

如果您不希望它可见,但仍可激活,请将这个.lnk文件,即放入快速启动文件夹,因为该目录用于此类快捷方式。(无论是否显示在桌面上)#76080 #3619355

"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
于 2017-06-16T12:05:21.820 回答
22

此外,Win10 为您提供了从工作目录打开 git bash 的选项,方法是右键单击您的文件夹并在此处选择 GitBash。

在此处输入图像描述

于 2019-01-29T22:07:56.780 回答
6

视窗 10

这基本上是@lengxuehx 的答案,但已针对 Win 10 进行了更新,并且假定您的 bash 安装来自git 官方下载的Git Bash for Windows 。

cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit

在我丢失了 Git Bash 的上下文菜单项作为从注册表设置运行的命令后,我最终使用了它。如果您对此感到好奇,我这样做了:

  1. 创建一个新的密钥Bash,在shell密钥中调用HKEY_CLASSES_ROOT\Directory\Background\shell
  2. 将字符串值添加到Icon(不是新键!),这是 git-bash.exe 的完整路径,包括 git-bash.exe 部分。您可能需要用引号括起来。
  3. 将默认值编辑为Bash要在上下文菜单中使用的文本 在此处输入图像描述
  4. Bash为被叫添加子键command
  5. command将 的默认值修改为cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit 在此处输入图像描述

然后,您应该能够关闭注册表并从任何真实目录开始使用 Git Bash。例如,This PC不是一个真正的目录。

在此处输入图像描述

于 2016-09-29T20:30:37.573 回答
4

这是可以直接在Run dialog box(快捷键是win+ R)中执行的命令,也可以很好地保存为.bat脚本:

cmd /c (start /d "/path/to/dir" bash --login) && exit
于 2016-01-11T10:07:05.803 回答
3

我不熟悉 Git Bash,但假设它是一个 git shell(例如git-sh),/path/to/my/gitshell并且您最喜欢的终端程序称为“myterm”,您可以编写以下脚本:

(cd dir1; myterm -e /path/to/my/gitshell) &
(cd dir2; myterm -e /path/to/my/gitshell) &
...

请注意,-e执行参数的名称可能与您喜欢的终端程序不同。

于 2013-11-11T22:43:02.950 回答
0

如果使用 Windows 操作系统

  1. 右键单击 git 终端 > 属性

步骤 > 一

  1. 属性>在快捷方式选项卡下>开始:添加您的文件夹目标路径,如下图所示

步骤 > 二

于 2021-05-13T03:41:34.593 回答
-1

使用 Windows 资源管理器,导航到您想要的任何目录,在地址栏中键入“cmd”,它将在该目录中打开 Windows 命令提示符。

同样,如果您git的路径中有目录,您可以在地址栏中键入“git-bash”,Git Shell 将在该目录中打开。

于 2020-04-17T14:05:23.180 回答