プロセスが開始されると、親プロセスの作業ディレクトリを継承することがわかります。しかし、論理作業ディレクトリと実際の作業ディレクトリの両方を継承しますか、それとも実際の作業ディレクトリのみを継承しますか?
答え1
まあ。 「論理」作業ディレクトリは環境変数に含まれていますPWD
。environ(7)
「一部のシェルによって設定」されたと言うので、明らかにアプリケーションによって異なります。もう一つの質問は、他のプログラムがそれを読むかどうかです。
/tmp$ ln -s ~ link
/tmp$ cd link
/tmp/link$ bash -c "pwd"
/tmp/link
/tmp/link$ zsh -c "pwd"
/home/itvirta
/tmp/link$ dash -c "pwd"
/tmp/link
Bashはdash
これを信頼しているようですが、zsh
そうではありません(私のシステムでは設定可能であると確信しています)。