使用给定路径启动 sh.exe (bash)

使用给定路径启动 sh.exe (bash)

我需要在 Windows 环境中使用预定义路径启动 git-bash (sh.exe)。

对于 cmd.exe 可以使用如下命令完成:

cmd.exe /K "cd /d {PATH_GOES_HERE}"

对于 powershell.exe 可以使用以下命令完成:

powershell.exe -noexit -command "cd '{PATH_GOES_HERE}'"

但我无法使用 git-bash (又名 sh.exe)获得相同的效果。我尝试了类似...

sh.exe --login -i -c "cd {PATH_GOES_HERE}"

...但我无法让它发挥作用。

命令行本身可以工作,通过输入...

sh.exe --login -i -c "ls"

...我得到了目录的 bash 彩色输出

在此处输入图片描述

答案1

感谢来自迈克尔·D,我安装了 Git,并启用了“Git Bash Here”功能。然后我通过浏览注册表来查找 Git 的操作方式:

HKEY_CLASSES_ROOT\Directory\shell\git_shell\command

这给了我要使用的命令:

C:\Program Files\Git\git-bash.exe "--cd=%1"

其中%1代表 Windows 资源管理器提供的路径。

所以我所要做的就是执行如下命令:

C:\Program Files\Git\git-bash.exe "--cd={PATH_GOES_HERE}"

顺便说一句,不需要将 Windows 路径转换为类似/c/users/myuser/...

这意味着我不使用执行文件git bash 工具今后。

谢谢伙伴们。

答案2

bash正在启动时读取.bashrc文件。

  1. 开始sh.exe --login
  2. 通过输入来创建.bashrc文件echo "cd c/Windows/system32/" > ~/.bashrc
  3. 注销(Ctrl + D)
  4. 开始sh.exe --login
  5. 输入pwd 应该是c/Windows/system32/

\Program Files\据我所知,Windows使用 UAC保护该文件夹。您可能需要sh.exe以管理员身份运行,或者考虑安装 git C:\git(在程序文件文件夹之外)。

相关内容