Как запустить окно Git Bash с определенным рабочим каталогом, используя скрипт?
Как я могу запустить новое окно Git Bash с указанным рабочим каталогом, используя скрипт (либо Bash, либо пакет Windows)?
Моя цель - запустить несколько окон Git Bash из одного скрипта, каждый из которых установлен в свой рабочий каталог. Таким образом, я могу быстро приступить к работе после загрузки компьютера, вместо того, чтобы открывать окна Git Bash и переходить к нужному рабочему каталогу.
Я не спрашиваю, как изменить рабочий каталог по умолчанию, как это делает этот вопрос, а чтобы запустить одно или несколько окон терминала с различными рабочими каталогами из сценария.
Ответы
Ответ 1
Git Bash использует cmd.exe
для своих терминалов плюс расширения от MSYS/MinGW, которые предоставляются sh.exe
, своего рода оболочкой cmd.exe
. В Windows вы запускаете новый терминал с помощью команды start
.
Таким образом, оболочка script, которая запускает новый Git Bash терминал с определенным рабочим каталогом:
(cd C:/path/to/dir1 && start sh --login) &
(cd D:/path/to/dir2 && start sh --login) &
Эквивалентная партия Windows script:
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
, щелкните левой кнопкой мыши значок верхнего левого окна и выберите "По умолчанию" ).
Ответ 2
Другой вариант - создать ярлык со следующими свойствами:
![введите описание изображения здесь]()
Цель должна быть:
"% SYSTEMDRIVE%\Program Files (x86)\ Git\bin\sh.exe" --login
В начало - папка, в которую вы хотите запустить приглашение Git Bash.
Ответ 3
Попробуйте параметр --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"
Ответ 4
Давайте еще добавить ответ от @Drew Noakes:
Цель:
"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo
Параметр cd
должен быть одним из параметров указания рабочего каталога.
Также обратите внимание, что у меня нет никаких --login
param: Вместо этого я использую другое дополнительное приложение, предназначенное только для ключей SSH: Pageant (агент аутентификации PuTTY).
Начало работы:
C:\GitRepo
Точно так же, как @Drew Noakes упоминается/показывается здесь раньше, я тоже использую его.
Горячая клавиша:
Ctrl + Alt + B
Такие ярлыки - еще одна известная функция в Windows. Но есть ограничение: чтобы ярлык вступил в силу, он должен быть помещен где-то в подкаталог User: Рабочий стол в порядке.
Если вы не хотите, чтобы он был видимым, но все же активируемым, поместите этот файл .lnk
, то есть в папку быстрого запуска, поскольку этот каталог предназначен для таких ярлыков. (независимо от того, отображается ли на рабочем столе) # 76080 # 3619355
"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
Ответ 5
Это команда, которая может быть выполнена непосредственно в Run dialog box
(ярлык win + R), а также хорошо сохраняется как .bat
script:
cmd /c (start /d "/path/to/dir" bash --login) && exit
Ответ 6
Я не знаком с Git Bash, но считая, что это оболочка Git (например, git-sh
), находящаяся в /path/to/my/gitshell
, и ваша любимая терминальная программа называется `myterm ', вы можете script следующее:
(cd dir1; myterm -e /path/to/my/gitshell) &
(cd dir2; myterm -e /path/to/my/gitshell) &
...
Обратите внимание, что параметр -e
для исполнения может быть назван по-разному с вашей любимой программой терминала.
Ответ 7
Windows 10
Это в основном ответ @lengxuehx, но обновленный для Win 10, и предполагает, что ваша установка bash от Git bash для Windows от git официальные загрузки.
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
Я закончил использование этого после того, как я потерял элементы контекстного меню для Git bash в качестве моей команды для запуска из параметров реестра. Если вам это интересно, я сделал это:
- Создайте новый ключ с именем
Bash
в shell
в HKEY_CLASSES_ROOT\Directory\Background\shell
- Добавьте строковое значение в
Icon
(а не новый ключ!), это полный путь к вашему git - bash.exe, включая часть git - bash.exe. Возможно, вам придется обернуть это в кавычки.
- Измените значение по умолчанию
Bash
на текст, который вы хотите использовать в контекстном меню
![введите описание изображения здесь]()
- Добавить под-ключ к
Bash
под названием command
- Изменить значение
command
по умолчанию на cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
![введите описание изображения здесь]()
Затем вы сможете закрыть реестр и начать использовать Git bash из любого места, где находится настоящий каталог. Например, This PC
не является реальным каталогом.
![введите описание изображения здесь]()
Ответ 8
Кроме того, Win10 дает вам возможность открыть git bash из вашего рабочего каталога, щелкнув правой кнопкой мыши на вашей папке и выбрав GitBash здесь.
![enter image description here]()