Symlink
符號連結選項(-P -L -H)的字母代表什麼?
我根據 SUSv4-2018ed 總結了接受符號連結選項的命令列表:
cd chgrp chown chmod cp find ln ls pax rm
完整列表還包括它們的預設值和其他支持的相關選項(例如
-h
和-d
),我將其儲存在我的 HDD 上以供參考。我以前見過(如果我是正確的,GNU 文件)
-P -L
分別將選項稱為“物理”和“邏輯”,我認為這可能是選項字母的來源,但截至 2019 年 11 月的最新文件將它們稱為“–no-dereference”和“–dereference”現在。我的問題是:
-P -L -H
從哪裡來?是 SUS、XPG、POSIX、SVID 還是供應商文件?它們最初代表什麼?
P
並且L
確實是指物理符號連結本身,以及符號連結所指的邏輯文件。如果轉到第 A.3 節。Single Unix Specification 2018 版 Rationale 卷的“符號連結”小節,
-P -L -H
都提到了,它說
-H
(半邏輯)
短標誌是 Posix。但是在 afaik 之前,它們在 BSD 中是相同的。
據我所知,更清晰的長標誌是 gnu 。
確實 P 和 L 是從物理和邏輯上來的,但是最近的許多文件都沒有使用這些術語來描述,因為它們很難理解。使用取消引用/遵循等術語。
我個人認為最終的文件或目錄是物理的東西,而連結本身只是邏輯的東西,但它的使用方式相反(所以物理或邏輯地評估符號連結)。