1. ホーム
  2. bash

[解決済み] Git Bash のウィンドウを特定の作業ディレクトリでスクリプトを使って起動するには?

2023-01-17 14:40:03

質問

スクリプト(BashまたはWindowsバッチ)を使って、作業ディレクトリを指定して新しいGit Bashウィンドウを起動するにはどうしたらよいでしょうか。

私の目標は、一つのスクリプトから複数のGit Bashウィンドウを起動し、それぞれを異なる作業ディレクトリに設定することです。この方法なら、Git Bash ウィンドウを開いて、それぞれを正しい作業ディレクトリに移動させる代わりに、コンピューターを起動した後に素早く作業に取り掛かることができます。

のように、デフォルトの作業ディレクトリを変更する方法を尋ねているのではありません。 この質問 のようにデフォルトの作業ディレクトリを変更する方法ではなく、スクリプトから異なる作業ディレクトリを持つ1つまたは複数のターミナルウィンドウを起動する方法を尋ねているのです。

どのように解決するのですか?

Git Bash は cmd.exe で提供されるMSYS/MinGWの拡張機能とターミナルに使用します。 sh.exe のようなものです。 cmd.exe のラッパーです。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 を開き、左上のアイコンを左クリックし、デフォルトを選択します)。