Pwd
真正的目前目錄
顯然我知道
pwd
andreadlink
,但是是否有一個命令可以找出目前目錄的真正絕對路徑(即解析連結和點)?
pwd -P
(在任何 POSIX shell 中),是您要查找的命令。
-P
用於物理(與邏輯(-L
預設值)相反),其中pwd
主要轉儲內容$PWD
(shell根據您提供給cd
或的參數維護pushd
))。$ ln -s . /tmp/here $ cd /tmp/here/here $ cd ../here/here $ pwd /tmp/here/here/here $ pwd -P /tmp
採用
$ env pwd
或者
$ /bin/pwd
除非設置了變數 POSIXLY_CORRECT,在這種情況下您需要添加
-P
.細節:
shell 有一個內置
pwd
函式,預設列印 shell 的值$PWD
。在這樣做時,它可能包括邏輯路徑(預設-L
)。如果您使用 ( ) 呼叫內置函式
-P
或使用外部函式/bin/pwd
:$ ln -s . /tmp/here; cd /tmp/here/here/here $ pwd /tmp/here/here/here $ pwd -P /tmp $ /bin/pwd /tmp
原因是外部
/bin/pwd
預設-P
選項。來自
info pwd
:此實現使用
-P' as the default unless the
POSIXLY_CORRECT’ 設置環境變數。