我根据 SUSv4-2018ed 总结了接受符号链接选项的命令列表:
cd chgrp chown chmod cp find ln ls pax rm
完整列表还包括它们的默认值和其他支持的相关选项(例如-h
和-d
),我将其存储在我的硬盘上以供参考。
我之前见过(GNU 文档,如果我是正确的)-P -L
分别将选项称为“物理”和“逻辑”,我认为这可能是选项字母的来源,但截至 2019 年 11 月的最新文档将它们称为现在是“--no-dereference”和“--dereference”。
我的问题是:从哪里来-P -L -H
?是 SUS、XPG、POSIX、SVID 还是供应商文档?它们最初代表什么?
答案1
P
并且L
确实指的是物理符号链接本身,以及符号链接所指的逻辑文件。
如果一个人去A.3 节。 2018 年版 Single Unix 规范基本原理卷的“符号链接”小节,所有这些-P -L -H
都被提到了,它说
-H
(对于半逻辑)
感谢去Don Cragon(来自奥斯汀集团邮件列表)为指针。
答案2
短标志是 Posix。但据我所知,在 BSD 中它们是相同的。
据我所知,更清晰的长标志是 gnu。
事实上,P和L来自物理和逻辑,但许多最近的文档没有使用这些术语来描述,因为它们很难理解。使用取消引用/跟随等术语。
我个人认为最终的文件或目录是物理的东西,而链接本身只是逻辑的东西,但它的使用方式相反(因此从物理或逻辑上评估符号链接)。