Muszę uruchomić skrypt powłoki cygwin bez zmiany katalogu roboczego spoza środowiska cygwin.
Jeśli ucieknę \path\to\bash.exe -c command
, wtedy ścieżka nie jest ustawiona poprawnie i nie można znaleźć programów cygwin.
Jeśli korzystam z --login
opcja, bash
ustawia ścieżkę poprawnie, ale także zmienia mój katalog domowy.
Jakich opcji należy użyć, aby uruchomić bash, aby zachować bieżący katalog roboczy, a także znaleźć pliki wykonywalne cygwin?
bash
cygwin
environment-variables
working-directory
Ben Voigt
źródło
źródło
Odpowiedzi:
Okazuje się, że domyślne cygwin
/etc/profile
sprawdza zmienną środowiskową o nazwieCHERE_INVOKING
i blokuje zmianę katalogu, jeśli jest ustawiony.Więc
ma pożądane zachowanie.
źródło