Comment lancer une fenêtre Git Bash avec un répertoire de travail particulier en utilisant un script?
Comment puis-je lancer une nouvelle fenêtre Git Bash avec un répertoire de travail spécifié en utilisant un script (bash ou Windows batch)?
mon objectif est de lancer plusieurs fenêtres Git Bash à partir d'un seul script, chacune étant positionnée sur un répertoire de travail différent. De cette façon, je peux rapidement me rendre au travail après avoir démarré l'ordinateur au lieu d'avoir à ouvrir Git Bash windows et la navigation de chacun d'eux dans le répertoire de travail correct.
Edit: je ne demande pas comment changer le répertoire de travail par défaut, comme cette question le fait, mais pour lancer une ou plusieurs fenêtres de terminal avec des répertoires de travail différents d'un script.
7 réponses
Git Bash utilise cmd.exe
pour son terminal ainsi que des extensions de MSYS/MinGW qui sont fournies par sh.exe
, une sorte de cmd.exe
wrapper. Dans Windows vous lancez un nouveau terminal en utilisant la commande start
.
ainsi, un script shell qui lance un nouveau terminal Git Bash avec un répertoire de travail spécifique est:
(cd C:/path/to/dir1 && start sh --login) &
(cd D:/path/to/dir2 && start sh --login) &
un script Windows batch équivalent est:
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
Pour obtenir la même police et la taille de la fenêtre comme le Git Bash lancé à partir du menu Démarrer, il est plus facile de copier les paramètres raccourcis du menu Démarrer dans la console de commande par défaut (pour changer les paramètres par défaut, ouvrez cmd.exe
, cliquez sur l'icône en haut à gauche, et sélectionnez Par Défaut).
une autre option est de créer un raccourci avec les propriétés suivantes:
Cible devrait être:
" %SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe "--login
Start in est le dossier dans lequel vous souhaitez lancer votre invite Git Bash.
essayez l'option --cd=. En supposant que votre GIT Bash réside en C:\Program Files\Git it would be:
"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"
si utilisé à l'intérieur de la clé de Registre, le paramètre de dossier peut être fourni avec %1:
"C:\Program Files\Git\git-bash.exe" --cd="%1"
ajoutons encore à la réponse de @Drew Noakes:
objectif:
"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo
le paramètre cd
devrait être l'une des options pour spécifier le répertoire de travail.
aussi noter, que je n'ai pas tout --login
param là: au lieu de cela, j'utilise une autre application supplémentaire, dédiée uniquement pour les clés SSH: Pageant (PuTTY authentication agent) .
Démarrer dans:
C:\GitRepo
de la même manière que @Drew Noakes l'a mentionné/montré ici plus tôt, je l'utilise aussi.
clé de raccourci:
Ctrl + Alt + B
ces raccourcis sont une autre caractéristique moins connue dans Windows. Mais il y a une restriction: pour laisser le raccourci prendre effet, il doit être placé quelque part sur le sous-répertoire de L'utilisateur: le bureau est parfait.
si vous ne voulez pas qu'il soit visible, mais encore activable, placez ceci .lnk
fichier c'est à dire le dossier de lancement rapide, en tant que dir est le dessein de tels raccourcis. (peu importe si affiché sur le bureau) #76080 #3619355
"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
c'est la commande qui peut être exécutée directement dans Run dialog box
(raccourci est win + R ) et fonctionne également bien enregistré comme un .bat
script:
cmd /c (start /d "/path/to/dir" bash --login) && exit
Je ne suis pas familier avec Git Bash mais en supposant que c'est un shell git (tel que git-sh
) résidant dans /path/to/my/gitshell
et votre programme terminal préféré est appelé `myterm' vous pouvez script ce qui suit:
(cd dir1; myterm -e /path/to/my/gitshell) &
(cd dir2; myterm -e /path/to/my/gitshell) &
...
notez que le paramètre -e
pour l'exécution peut être nommé différemment avec votre programme terminal préféré.
Windows 10
c'est essentiellement la réponse de @lengxuehx, mais mis à jour pour Win 10, et il suppose que votre installation de bash est de Git Bash pour Windows à partir de téléchargements officiels de git .
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
j'ai fini par utiliser ceci après avoir perdu mes éléments de menu contextuel pour Git Bash comme commande à exécuter à partir des paramètres du registre. Au cas où vous seriez curieux à ce sujet, j'ai fait ceci:
- créer une nouvelle clé appelée
Bash
dans lashell
clé àHKEY_CLASSES_ROOT\Directory\Background\shell
- ajoute une valeur de chaîne de caractères à
Icon
(pas une nouvelle clé! c'est le chemin complet vers votre git-bash.exe, y compris le git-bash.exe de la partie. Vous pourriez avoir besoin de l'envelopper dans des guillemets. - modifier la valeur par défaut de
Bash
au texte que vous souhaitez utiliser dans le menu contextuel - ajouter une sous-clé à
Bash
appeléecommand
- modifier la valeur par défaut de
command
encmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
alors vous devriez être en mesure de fermer le registre et de commencer à utiliser Git Bash à partir de n'importe où qui est un véritable répertoire. Par exemple, This PC
n'est pas un répertoire réel.