使用批處理腳本在特定目錄中啟動(dòng)Git-Bash窗口
問題描述
平時(shí)想要在項(xiàng)目目錄中輸入git
命令,我需要先打開git
-bash
窗口,然后還要cd
到項(xiàng)目目錄中。這挺麻煩的。我現(xiàn)在想:
通過批處理腳本,直接在某個(gè)目錄中啟動(dòng)git
-bash
窗口。
實(shí)現(xiàn)
在項(xiàng)目目錄下,創(chuàng)建一個(gè)批處理腳本(StartGitBash.bat
)文件,寫入如下的命令:
start F:\Program" "Files\Git\git-bash.exe --cd=D:\dev\workspace\HexoTools
命令解釋start
用于啟動(dòng)一個(gè)窗口F:\Program" "Files\Git\git-bash.exe
是git
-bash
的路徑,注意路徑中間的空格要用引號(hào)包起來--cd=D:\dev\workspace\HexoTools
指定git
-bash
的啟動(dòng)目錄為D:\dev\workspace\HexoTools
,點(diǎn)擊批處理在項(xiàng)目目錄下打開git-bash
現(xiàn)在我只要點(diǎn)擊項(xiàng)目目錄下的StartGitBash.bat
:
就可在項(xiàng)目目錄下打開git-bash了:
升級(jí)
上面的實(shí)現(xiàn)方式雖然可以快速某個(gè)項(xiàng)目中打開git-bash.exe
,但是這種實(shí)現(xiàn)方式不通用,所以我改進(jìn)了一下,通過輸入項(xiàng)目路徑來快速在該目錄下快速打開git-bash.exe
。為了后面調(diào)用的時(shí)候少打點(diǎn)字,我把文件名改為StartGit.bat
,代碼如下:
@echo offset /P input="輸入要在git-bash中打開的項(xiàng)目路徑:"start F:\Program" "Files\Git\git-bash.exe --cd=%input%
通過Win+R調(diào)用
然后把這個(gè)StartGit.bat
所在的目錄放到path
環(huán)境變量中,這樣就可以通過win+r
調(diào)用了,調(diào)用的步驟為:
復(fù)制一個(gè)項(xiàng)目的路徑.
win+R
打開運(yùn)行,輸入StartGit
然后回車(大小寫無所謂).
然后粘貼項(xiàng)目路徑,按回車,這樣就可以快速在Git-bash.exe
中快速進(jìn)入該項(xiàng)目路徑了.
運(yùn)行效果如下:
參考資料
如何使用腳本啟動(dòng)具有特定工作目錄的Git Bash窗口?
Windows 10
這基本上是@ lengxuehx的答案,但是針對(duì)Win 10進(jìn)行了更新,它假設(shè)你的bash安裝來自git官方下載的Git Bash for Windows。
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
在我丟失Git Bash的上下文菜單項(xiàng)作為我從命令注冊(cè)表設(shè)置運(yùn)行的命令后,我最終使用了這個(gè)。 如果你對(duì)此感到好奇,我這樣做了:
- 在HKEY_CLASSES_ROOT\Directory\Background\shell的shell鍵中創(chuàng)建一個(gè)名為Bash的新鍵
- 將字符串值添加到Icon(不是新密鑰?。?,它是git-bash.exe的完整路徑,包括git-bash.exe部分。 您可能需要將其包裝在引號(hào)中。
- 在上下文菜單中將Bash的默認(rèn)值編輯為要使用的文本
- 在Bash添加一個(gè)名為command的子鍵
- 將command的默認(rèn)值修改為cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
然后你應(yīng)該能夠關(guān)閉注冊(cè)表并從任何真正的目錄開始使用Git Bash。 例如,This PC不是真正的目錄。
如何使用腳本(bash或Windows批處理)啟動(dòng)具有指定工作目錄的新Git Bash窗口?
我的目標(biāo)是從單個(gè)腳本啟動(dòng)多個(gè)Git Bash窗口,每個(gè)窗口都設(shè)置為不同的工作目錄。 通過這種方式,我可以在啟動(dòng)計(jì)算機(jī)后快速開始工作,而不必打開Git Bash窗口并將每個(gè)窗口導(dǎo)航到正確的工作目錄。
編輯:我不是問如何更改默認(rèn)工作目錄,就像這個(gè)問題一樣,而是從腳本啟動(dòng)一個(gè)或多個(gè)具有不同工作目錄的終端窗口。
Git Bash使用cmd.exe作為終端加上MSYS / MinGW的擴(kuò)展,這是由sh.exe(一種cmd.exe包裝器)提供的。 在Windows中,使用start命令啟動(dòng)新終端。
因此,啟動(dòng)具有特定工作目錄的新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
要獲得與從開始菜單啟動(dòng)的Git Bash相同的字體和窗口大小,最簡(jiǎn)單的方法是將開始菜單快捷方式設(shè)置復(fù)制到命令控制臺(tái)默認(rèn)設(shè)置(更改默認(rèn)值,打開cmd.exe,左鍵單擊左上角的圖標(biāo),并選擇默認(rèn)值)。
嘗試使用--cd =選項(xiàng)。 假設(shè)您的GIT Bash位于C:\ Program Files \ Git中,它將是:
"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"
如果在注冊(cè)表項(xiàng)中使用,則可以使用%1提供文件夾參數(shù):
"C:\Program Files\Git\git-bash.exe" --cd="%1"
我不熟悉Git Bash,但假設(shè)它是一個(gè)位于/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) & ...
請(qǐng)注意,執(zhí)行的參數(shù)-e可能與您最喜歡的終端程序命名不同。
這是可以在Run dialog box直接執(zhí)行的命令(快捷鍵是win+R),也可以保存為.bat腳本:
cmd /c (start /d "/path/to/dir" bash --login) && exit
補(bǔ)充
idea中可以直接設(shè)置terminal為git-bash
nice 這個(gè)方法好,不用進(jìn)入工作目錄再右鍵了
以上就是使用批處理腳本在特定目錄中啟動(dòng)Git-Bash窗口的詳細(xì)內(nèi)容,更多關(guān)于批處理啟動(dòng)Git-Bash窗口的資料請(qǐng)關(guān)注本站其它相關(guān)文章!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。