ディレクトリを変更せずに正しいパスでbashシェル(cygwin)を起動します


13

作業ディレクトリを変更せずに、cygwin環境の外部からcygwinシェルスクリプトを実行する必要があります。

を実行すると\path\to\bash.exe -c command、パスが正しく設定されず、cygwinプログラムが見つかりません。

この--loginオプションを使用するとbash、パスが正しく設定されますが、ホームディレクトリも変更されます。

現在の作業ディレクトリを保持し、cygwin実行可能ファイルを見つけるためにbashを起動するには、どのオプションを使用する必要がありますか?


こんにちは、同様の質問がStackOverflowので議論されていました:stackoverflow.com/questions/9637601/...
ローマHocke

@Roman:これは、SOではまったくトピック外です。
ベンフォークト

回答:


18

cygwinのデフォルトで/etc/profileは、指定された環境変数をチェックし、CHERE_INVOKING設定されている場合はディレクトリの変更を禁止します。

そう

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

望ましい動作をします。


これは、MSYS2 bashの呼び出しにも機能します。
ターレン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.