脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - bat - 使用批处理脚本在特定目录中启动Git-Bash窗口

使用批处理脚本在特定目录中启动Git-Bash窗口

2021-10-09 00:59蓝蓝223 bat

这篇文章主要介绍了使用批处理脚本在特定目录中启动Git-Bash窗口,需要的朋友可以参考下

问题描述

平时想要在项目目录中输入git命令,我需要先打开git-bash窗口,然后还要cd到项目目录中。这挺麻烦的。我现在想:
通过批处理脚本,直接在某个目录中启动git-bash窗口。

实现

在项目目录下,创建一个批处理脚本(startgitbash.bat)文件,写入如下的命令:

start f:\program" "files\git\git-bash.exe --cd=d:\dev\workspace\hexotools

命令解释start用于启动一个窗口f:\program" "files\git\git-bash.exegit-bash的路径,注意路径中间的空格要用引号包起来--cd=d:\dev\workspace\hexotools指定git-bash的启动目录为d:\dev\workspace\hexotools,点击批处理在项目目录下打开git-bash

现在我只要点击项目目录下的startgitbash.bat:

使用批处理脚本在特定目录中启动Git-Bash窗口

就可在项目目录下打开git-bash了:

使用批处理脚本在特定目录中启动Git-Bash窗口

升级

上面的实现方式虽然可以快速某个项目中打开git-bash.exe,但是这种实现方式不通用,所以我改进了一下,通过输入项目路径来快速在该目录下快速打开git-bash.exe。为了后面调用的时候少打点字,我把文件名改为startgit.bat,代码如下:

@echo offset /p input="输入要在git-bash中打开的项目路径:"start f:\program" "files\git\git-bash.exe --cd=%input%

通过win+r调用

然后把这个startgit.bat所在的目录放到path环境变量中,这样就可以通过win+r调用了,调用的步骤为:

复制一个项目的路径.

使用批处理脚本在特定目录中启动Git-Bash窗口win+r

打开运行,输入startgit然后回车(大小写无所谓).

使用批处理脚本在特定目录中启动Git-Bash窗口

然后粘贴项目路径,按回车,这样就可以快速在git-bash.exe中快速进入该项目路径了.

使用批处理脚本在特定目录中启动Git-Bash窗口

运行效果如下:

使用批处理脚本在特定目录中启动Git-Bash窗口

参考资料

如何使用脚本启动具有特定工作目录的git bash窗口?

windows 10

这基本上是@ lengxuehx的答案,但是针对win 10进行了更新,它假设你的bash安装来自 git bash for windows。

cmd /c (start /b "%cd%" "c:\program files\gitw\git-bash.exe") && exit

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

  1. 在hkey_classes_root\directory\background\shell的shell键中创建一个名为bash的新键
  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不是真正的目录。

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

我的目标是从单个脚本启动多个git bash窗口,每个窗口都设置为不同的工作目录。 通过这种方式,我可以在启动计算机后快速开始工作,而不必打开git bash窗口并将每个窗口导航到正确的工作目录。

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

git bash使用cmd.exe作为终端加上msys / mingw的扩展,这是由sh.exe (一种cmd.exe包装器)提供的。 在windows中,使用start命令启动新终端。

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

尝试使用--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"

我不熟悉git bash,但假设它是一个位于/path/to/my/gitshell的git shell(例如git-sh ),而你最喜欢的终端程序叫做`myterm',你可以编写以下脚本:

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

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

这是可以在run dialog box直接执行的命令(快捷键是win + r ),也可以保存为.bat脚本:

cmd /c (start /d "/path/to/dir" bash --login) && exit

补充

idea中可以直接设置terminal为git-bash
nice 这个方法好,不用进入工作目录再右键了

以上就是使用批处理脚本在特定目录中启动git-bash窗口的详细内容,更多关于批处理启动git-bash窗口的资料请关注服务器之家其它相关文章!

原文链接:https://blog.csdn.net/qq_21808961/article/details/86026577

延伸 · 阅读

精彩推荐
  • bat批处理重命名系列案例代码

    批处理重命名系列案例代码

    这篇文章主要介绍了批处理重命名系列案例代码,需要的朋友可以参考下...

    张戈10372021-10-07
  • bat变量延迟详解 call setlocal

    变量延迟详解 call setlocal

    变量延迟在for语句中起着至关重要的作用,不只是在for语句中,在其他的复合语句中,它也在幕后默默地工作着,为了突出它的重要性,本节内容在单独的...

    脚本之家5742021-10-08
  • batbat过滤任意字符

    bat过滤任意字符

    早在写 bat的一个小游戏猜数字的时候我就研究过这个问题 如何在bat里面实现 对输入的任意字符进行过滤 当时使用的几种方法如下 ...

    allyesno11802021-12-26
  • batbat实现一分钟清除系统中所有垃圾文件

    bat实现一分钟清除系统中所有垃圾文件

      在桌面上点鼠标右键,选择新建一个“记事本”,把下面的字复制进去,点“另存为”,把文件名定为“清除系统垃圾.bat”就完成,记住后缀名一定要...

    批处理之家10592021-11-14
  • bat让bat批处理以管理员权限运行的实现方法

    让bat批处理以管理员权限运行的实现方法

    这篇文章主要介绍了让bat批处理以管理员权限运行的实现方法,需要的朋友可以参考下...

    bat教程网6962021-10-08
  • batWindows下用bat命令行方式更改IE代理服务器设置方法

    Windows下用bat命令行方式更改IE代理服务器设置方法

    批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,批处理文件的扩展名为bat,下面通过本文给大家分享Windows下用bat命令...

    大萝卜空心的6202021-10-06
  • bat使用 windows bat 脚本命令一键启动MySQL服务的方法

    使用 windows bat 脚本命令一键启动MySQL服务的方法

    这篇文章主要介绍了使用 windows bat 脚本命令 一键启动MySQL服务的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的...

    明金同学14752021-10-07
  • batWindows批处理更改当前工作路径的BAT

    Windows批处理更改当前工作路径的BAT

    最近项目上需要获取文件夹下所有文件信息,因为文件夹是在server上,所以想用批处理bat来获取该路径下所有文件信息,然后通过任务计划管理去每天自动...

    脚本之家12122021-10-07