我知道當一個進程啟動時,它會繼承其父進程的工作目錄。但它是同時繼承邏輯工作目錄和實體工作目錄還是僅繼承實體工作目錄?
答案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
Bashdash
似乎指望它,但zsh
事實並非如此(在我的系統上,我確信它是可配置的)。