Bash
防止’cd’記住遍歷的符號連結
假設您有目錄 ~/mytool 軟連結到 /usr/local/mytool。然後
cd mytool
將目前目錄保留為 ~/mytool,這可能會導致腳本行為不正確。有沒有辦法避免這種行為?通過一些Google搜尋,我發現您可以按如下方式實現:
cd $1 ; cd `pwd -P`
沒有切換到“cd”嗎?環境變數?
如果
set -P
在 bash 中鍵入所有命令,例如 cd,pwd 將遵循物理路徑。否則,您可以使用cd -P
和pwd -P
對預設行為進行臨時更改。從 bash 的聯機幫助頁:
-P If set, the shell does not follow symbolic links when executing commands such as cd that change the cur- rent working directory. It uses the physical directory structure instead. By default, bash follows the logical chain of directories when performing commands which change the current directory.
例如,要使其永久化,請將其放入您的
~/.bashrc
文件中。