无证“chown 用户”。速记

无证“chown 用户”。速记

有一天,我错误地注意到 chown 的这个未记录的简写:

chown user. filename

这是以下内容的简写:

chown user:user filename

后者在经常运行时打字确实很痛苦,所以速记就非常方便了。我尝试在文档中查找其文档,但从未找到有关该隐藏功能的提示。

这是符合 POSIX 标准的简写吗?是 chown 以不同的方式解析它还是某种 bash 扩展?我正在使用 Debian 8.4,但我已经使用它很多年了。它是特定于 Debian 实现的吗?

答案1

谢谢@杰夫夏勒为了答案

一些较旧的脚本可能仍使用“.”代替“:”分隔符。 POSIX 1003.1-2001(参见标准一致性)不需要对此支持,但为了向后兼容,GNU chown 支持“.”。只要没有歧义的结果。新脚本应避免使用“.”因为它不可移植,并且如果整个所有者“.”组碰巧识别出名称包含“.”的用户,则会产生不良结果。

此行为特定于 GNU coreutils 的 chown 命令,而不是 bash 的功能。作为一个 GNU 实用程序,它也不是特定于 Debian 的。

相关内容