我有一个 Powershell 会话,它创建 bash 会话来运行这样的脚本
C:\msys64\usr\bin\bash -lc './super_duper_script.sh
其中 位于super_duper_script.sh
Powershell 会话的 cwd 中。不幸的是,当 bash 会话启动时,其 cwd 是“/home/username”,而不是 Powershell 会话的 cwd。
这是我到目前为止所做到的:
C:\msys64\usr\bin\bash -lc "cygpath -u '$PWD'"
回显 Powershell 会话的 cwd。现在的问题是,设置 bash 会话的 cwd 被证明是一个挑战。这只是我失败的两次尝试:
C:\msys64\usr\bin\bash -lc "env --chdir=(cygpath -u '$PWD')
C:\msys64\usr\bin\bash -lc "cd {cygpath -u '$PWD'}"
设置 .bashrc 不是一个选项,因为这个东西是在 CI 中运行的,而且可以在不同的目录中调用各种 bash 脚本。