Shell
如何將相對路徑轉換為絕對路徑,便攜且可靠?
假設我在 Unix-ish 系統上執行 bash——不一定是 Linux,也不一定是非常新的;它可能沒有我想要的所有軟體。
現在,我有一個相對路徑,我想為其獲取絕對路徑。這樣做的最強大和最便攜的方式是什麼?
這裡的答案似乎主要假設已安裝 GNU 核心實用程序,我寧願不這樣做。
如果您的答案適用於任何 Bourne Shell 變體,則可以加分。
我不確定是否
$PWD
在 bourne shell 中設置了環境變數,但是該命令pwd
自舊 minix 以來就存在並且是POSIX 的一部分,所以:abs_path="$(cd "$rel_path" && pwd -P)"
我現在做的是
absolute_path="$(cd "$relative_path"; echo "$PWD")"
我想知道伯恩殼牌是否有
$PWD
。