Lassi Asked: 2019-08-13 06:44:26 +0800 CST2019-08-13 06:44:26 +0800 CST 2019-08-13 06:44:26 +0800 CST passwd GECOS 字段中的与号 772 展开/etc/passwd GECOS 字段获取用户全名时,我们应该只展开第一个 & 号(&字符),还是展开所有 & 号? 在以逗号 ( ,) 分隔的子字段的 GECOS 字段中,应该仅在第一个子字段(即用户的全名)中还是在所有子字段中扩展 & 号? 如果 Unix 用户名包含大写字母,我们应该在&扩展中保留它们,还是应该只将用户名的第一个字母大写,其余的小写? passwd history 1 个回答 Voted Best Answer Lassi 2019-09-12T06:07:11+08:002019-09-12T06:07:11+08:00 和号只能在第一个逗号分隔的子字段(即所谓的“全名”或“实名”子字段)中扩展。如果 GECOS 字段中没有逗号,则将整个字段视为真实姓名。 任何和所有的 & 符号都会被扩展,而不仅仅是第一个。 如果用户名的第一个字符是 ASCII 小写字母,则该字母在 & 号扩展中为大写。否则,它会保持原样。除第一个字符外,不会对字符进行大小写转换。 该信息的事实上的权威来源是sendmail服务器和finger客户端实现。BSD 和 Solaris 的实现是开源的,它们似乎都同意上述规则。 GECOS 字段不再是该字段的最新名称。它更准确地称为手指域,因为在几乎所有系统上,逗号分隔子域的预期布局都来自手指。
该信息的事实上的权威来源是
sendmail
服务器和finger
客户端实现。BSD 和 Solaris 的实现是开源的,它们似乎都同意上述规则。GECOS 字段不再是该字段的最新名称。它更准确地称为手指域,因为在几乎所有系统上,逗号分隔子域的预期布局都来自手指。