Jak mogę uruchomić nowe okno Git Bash z określonym katalogiem roboczym za pomocą skryptu (albo Bash albo wsad Windows)?
Moim celem jest uruchomienie wielu okien Git Bash z jednego skryptu, każde ustawione w innym katalogu roboczym. W ten sposób mogę szybko zabrać się do pracy po uruchomieniu komputera, zamiast otwierania okien Git Bash i przechodzenia po każdym z nich do właściwego katalogu roboczego.
Nie pytam, jak zmienić domyślny katalog roboczy, jak to robi to pytanie , ale o uruchomienie jednego lub więcej okien terminala z różnymi katalogami roboczymi ze skryptu.
bash
shell
batch-file
git-bash
holocronweaver
źródło
źródło
Odpowiedzi:
Inną opcją jest utworzenie skrótu o następujących właściwościach:
Celem powinno być:
Rozpocznij w to folder, w którym chcesz uruchomić monit Git Bash.
źródło
Start in
ma coś wspólnego z katalogiem roboczym, w którym program myśli, że się w nim znajduje.Git Bash używa
cmd.exe
dla swojego terminala oraz rozszerzeń z MSYS / MinGW, które są dostarczane przezsh.exe
coś w rodzajucmd.exe
opakowania. W Windows uruchamiasz nowy terminal za pomocąstart
polecenia.Zatem skrypt powłoki uruchamiający nowy terminal Git Bash z określonym katalogiem roboczym to:
(cd C:/path/to/dir1 && start sh --login) & (cd D:/path/to/dir2 && start sh --login) &
Równoważny skrypt wsadowy systemu Windows to:
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
Aby uzyskać taką samą czcionkę i rozmiar okna jak Git Bash uruchamiany z menu Start, najłatwiej jest skopiować ustawienia skrótów menu Start do ustawień domyślnych konsoli poleceń (aby zmienić domyślne, otwórz
cmd.exe
, kliknij lewym przyciskiem myszy lewą górną ikonę i wybierz Domyślne).źródło
cd
do katalogu, w którym chcę uruchomić Git Bash, a następnie uruchomieniestart
polecenia z twojego przykładu naprawdę da mi terminal Git Bash w tym katalogu . Czy na pewno nie robisz acd $HOME
(lubcd
bez argumentów) gdzieś w swoich plikach rc bash? (Na przykład.bashrc
,.profile
...) Pamiętaj też o literze dysku. Jeśli chcesz uruchomić Git Bash naX:
dysku, tocd x:\path
nie zrobisz tego, musisz to zrobić,x:
a potemcd \path
przedstart
cd x:\path
. Odpowiednio zmodyfikuje moje rozwiązanie.cmd.exe
ustawienia nie są takie same, jak domyślne ustawienia Git Bash po instalacji Git Bash! I musisz zrozumieć różnice między ustawieniami domyślnymi (Defaults
z menu kontekstowego) a bieżącymi (Properties
). Tak więc zrobiłem: (1) otwórz Git Bash, wybierzProperties
(aktualne ustawienia), (2) dostrój dokładnie to, czego chcę (czcionka, rozmiar okna + pozycja), (3) otwórzcmd.exe
, wybierzDefaults
, (4 ) kopiuj i wklej ustawienia z Git Bash docmd.exe
. NastępnieOK
wcmd.exe
ustawieniach,Cancel
wGit Bash
ustawieniach i voila!Wypróbuj opcję --cd =. Zakładając, że twój GIT Bash znajduje się w C: \ Program Files \ Git, byłoby to:
"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"
Jeśli jest używany w kluczu rejestru, parametr folderu można podać za pomocą% 1:
"C:\Program Files\Git\git-bash.exe" --cd="%1"
źródło
%1
parametru rejestru?Dodajmy jeszcze do odpowiedzi od @Drew Noakes:
Cel:
"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo
Parametr
cd
powinien być jedną z opcji określania katalogu roboczego.Zauważ też, że nie mam tam żadnego
--login
parametru: Zamiast tego używam innej dodatkowej aplikacji, dedykowanej tylko dla kluczy SSH: Pageant (agent uwierzytelniania PuTTY) .Zacząć w:
Ten sam możliwy sposób, o którym @Drew Noakes wspomniał / pokazał tutaj wcześniej, ja też go używam.
Skrót klawiszowy:
Takie skróty to kolejna mniej znana funkcja w systemie Windows. Jest jednak ograniczenie: aby skrót zaczął działać, należy go umieścić w podkatalogu użytkownika: Pulpit jest w porządku.
Jeśli nie chcesz, aby był widoczny, ale nadal można go aktywować, umieść ten
.lnk
plik np. W folderze szybkiego uruchamiania, ponieważ ten katalog jest przeznaczony do takich skrótów. (bez względu na to, czy wyświetlane na pulpicie) # 76080 # 3619355"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
źródło
Ponadto Win10 daje ci opcję otwarcia git bash z katalogu roboczego, klikając prawym przyciskiem myszy folder i wybierając tutaj GitBash.
źródło
Windows 10
Jest to w zasadzie odpowiedź @ lengxuehx, ale zaktualizowana dla Win 10 i zakłada, że twoja instalacja basha pochodzi z Git Bash dla Windows z oficjalnych pobrań git .
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
Skończyło się na tym, że użyłem tego po tym, jak straciłem elementy menu kontekstowego dla Git Bash jako mojego polecenia do uruchamiania z ustawień rejestru. Jeśli jesteś tego ciekawy, zrobiłem to:
Bash
wshell
kluczu naHKEY_CLASSES_ROOT\Directory\Background\shell
Icon
(nie nowego klucza!), Czyli pełną ścieżkę do pliku git-bash.exe, w tym do części git-bash.exe. Konieczne może być zawinięcie tego w cudzysłów.Bash
tekstu, którego chcesz użyć w menu kontekstowymBash
wywoływanegocommand
command
wartość domyślną nacmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
Wtedy powinieneś być w stanie zamknąć rejestr i zacząć używać Git Bash z dowolnego miejsca, które jest prawdziwym katalogiem. Na przykład
This PC
nie jest prawdziwym katalogiem.źródło
HKEY_CLASSES_ROOT\Directory\Background\shell\git_shell\command
"C:\Program Files\Git\git-bash.exe" "--cd=%v."
To jest polecenie, które można wykonać bezpośrednio w
Run dialog box
(skrót to win+ R), a także działa dobrze jako.bat
skrypt:cmd /c (start /d "/path/to/dir" bash --login) && exit
źródło
/b
dla Win 10Nie jestem zaznajomiony z Git Bash, ale zakładając, że jest to powłoka git (taka jak
git-sh
) rezydująca,/path/to/my/gitshell
a twój ulubiony program terminalowy nazywa się `` myterm '', możesz napisać następujący skrypt:(cd dir1; myterm -e /path/to/my/gitshell) & (cd dir2; myterm -e /path/to/my/gitshell) & ...
Zauważ, że parametr
-e
do wykonania może mieć inną nazwę w Twoim ulubionym programie terminalowym.źródło
myterm
jest to cmd.exe z dodatkami za pośrednictwem MSYS / MinGW. Aby uruchomić nowe polecenie cmd, użyjstart
polecenia specyficznego dla systemu Windows, po którym następuje ścieżka do Git Bash,sh.exe
a następnie dowolne opcje wiersza poleceń, które lubisz. Moja odpowiedź zawiera szczegóły.Może podałem zły kierunek, ale podoba mi się ta sztuczka.
Używając Eksploratora Windows, wskazując na dowolny katalog, wpisz "cmd" w pasku adresu, otworzy się wiersz poleceń Windows w tym katalogu.
Jeśli masz katalog „Git” w swojej ścieżce, w ten sam sposób możesz wpisać „git-bash” w pasku adresu, a Git Shell otworzy się w tym katalogu.
źródło