Ich muss ein Cygwin-Shell-Skript ausführen, ohne das Arbeitsverzeichnis außerhalb der Cygwin-Umgebung zu ändern.
Wenn ich nur laufe \path\to\bash.exe -c command
, ist der Pfad nicht richtig eingestellt und Cygwin-Programme können nicht gefunden werden.
Wenn ich die --login
Option verwende, wird bash
der Pfad korrekt festgelegt, es wird jedoch auch in mein Ausgangsverzeichnis gewechselt.
Welche Optionen sollte ich verwenden, um bash zu starten, um das aktuelle Arbeitsverzeichnis beizubehalten und um auch ausführbare Dateien von cygwin zu finden?
bash
cygwin
environment-variables
working-directory
Ben Voigt
quelle
quelle
Antworten:
Es stellt sich heraus, dass die Standardeinstellung von cygwin
/etc/profile
nach einer benannten Umgebungsvariablen suchtCHERE_INVOKING
und die Änderung des Verzeichnisses verhindert, falls festgelegt.So
hat das gewünschte Verhalten.
quelle