スクリプト(BashまたはWindowsバッチ)を使用して、指定された作業ディレクトリで新しいGit Bashウィンドウを起動するにはどうすればよいですか?
私の目標は、それぞれ異なる作業ディレクトリに設定された単一のスクリプトから複数のGit Bashウィンドウを起動することです。このようにして、Git Bashウィンドウを開いて各ウィンドウを正しい作業ディレクトリに移動する代わりに、コンピューターを起動した後すぐに作業を開始できます。
この質問 のようにデフォルトの作業ディレクトリを変更する方法を尋ねるのではなく、スクリプトから異なる作業ディレクトリで1つ以上のターミナルウィンドウを起動します。
Git Bashは、その端末にcmd.exe
を使用し、さらにsh.exe
の一種であるcmd.exe
ラッパーによって提供されるMSYS/MinGWからの拡張を使用します。 Windowsでは、start
コマンドを使用して新しいターミナルを起動します。
したがって、特定の作業ディレクトリで新しいGit Bashターミナルを起動するシェルスクリプトは次のとおりです。
(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"
@Drew Noakesからの回答をさらに追加しましょう。
"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo
cd
paramは、作業ディレクトリを指定するオプションの1つである必要があります。
また、--login
paramがないことにも注意してください。代わりに、SSHキー専用の別の追加アプリを使用します。Pageant(PuTTY認証エージェント)。
C:\GitRepo
@Drew Noakesがここですぐに言及/表示したのと同じ方法で、私もそれを使用します。
Ctrl + Alt + B
このようなショートカットは、Windowsのもう1つのあまり知られていない機能です。ただし、制限があります。ショートカットを有効にするには、ユーザーのサブディレクトリのどこかにショートカットを配置する必要があります。デスクトップは正常です。
表示したくないが、まだアクティブにできるようにしたい場合は、この.lnk
ファイルをクイック起動フォルダーに配置します。このディレクトリはそのようなショートカット用です。 (デスクトップに表示されているかどうかに関係なく) #7608#3619355
"\Application Data\Microsoft\Internet Explorer\Quick Launch\"
これは、Run dialog box
で直接実行できるコマンドです(ショートカットは win+R)また、.bat
スクリプトとして適切に保存されます:
cmd /c (start /d "/path/to/dir" bash --login) && exit
私はGit Bashに精通していませんが、それがgit-sh
にあるgitシェル(/path/to/my/gitshell
など)であり、お気に入りの端末プログラムが「myterm」と呼ばれると仮定すると、次のスクリプトを作成できます。
(cd dir1; myterm -e /path/to/my/gitshell) &
(cd dir2; myterm -e /path/to/my/gitshell) &
...
実行用のパラメータ-e
は、お気に入りの端末プログラムによって異なる名前が付けられる場合があることに注意してください。
これは基本的に@lengxuehxの答えですが、Win 10用に更新されており、bashのインストールがGit Bash for Windowsから gitの公式ダウンロード であると想定しています。
cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
レジストリ設定から実行するコマンドとしてGit Bashのコンテキストメニュー項目を失った後、これを使用することになりました。あなたがそれについて興味があるなら、私はこれをしました:
HKEY_CLASSES_ROOT\Directory\Background\Shell
のBash
キーにShell
という新しいキーを作成しますIcon
(新しいキーではありません!)に追加します。これを引用符で囲む必要がある場合があります。Bash
のデフォルト値を、コンテキストメニューで使用するテキストに編集します Bash
というサブキーをcommand
という名前で追加しますcommand
のデフォルト値をcmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit
に変更します その後、レジストリを閉じて、実際のディレクトリである任意の場所からGit Bashの使用を開始できるはずです。たとえば、This PC
は実際のディレクトリではありません。