使用正确的路径启动bash shell(cygwin),而不更改目录


13

我需要从cygwin环境外部运行cygwin shell脚本而不更改工作目录。

如果我只运行\path\to\bash.exe -c command,则说明路径设置不正确,也找不到cygwin程序。

如果使用该--login选项,bash则可以正确设置路径,但也可以更改到我的主目录。

我应该使用什么选项来启动bash来保留当前的工作目录,并找到cygwin可执行文件?


嗨,类似的问题正在于StackOverflow的讨论stackoverflow.com/questions/9637601/...
罗马Hocke

@罗马:这将完全不在主题上。
Ben Voigt 2014年

Answers:


18

事实证明,cygwin默认/etc/profile检查一个名为的环境变量CHERE_INVOKING,如果设置,则禁止更改目录。

所以

set CHERE_INVOKING=1
\path\to\bash.exe -l -c command

具有所需的行为。


这也适用于调用MSYS2 bash。
塔伦2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.