在文件中/etc/passwd
我们有所谓的GECOS fields
(代表“通用电气综合操作系统”),即:
username:password:userid:groupid:gecos:home-dir:shell
Run Code Online (Sandbox Code Playgroud)
其中GECOS
分为:
:FullName,RoomAddress,WorkPhone,HomePhone,Others:
Run Code Online (Sandbox Code Playgroud)
并被Others
分成任意多的逗号:
:FullName,RoomAddress,WorkPhone,HomePhone,Other1,Other2,Other3:
Run Code Online (Sandbox Code Playgroud)
在man chfn
页面中可以阅读:
另一个字段用于存储其他应用程序使用的记帐信息。
现在,应用程序开发人员(我很感兴趣C language
,system calls
和/或bash script
),这就是抓住这个信息的最佳方式?
仅考虑Bash
环境,鉴于该finger
命令无法显示others
字段(或者至少我不知道如何显示),还有哪些其他命令可以显示?我知道这chfn
不仅是展示,而且是允许它们被改变。如果只是将它输出到stdout
怎么办?
当我finger
在 OS X 上运行时,我看到两个条目:
Login Name TTY Idle Login Time Office Phone
user user *con 2d Thu 15:59
user user s00 Sat 23:58
Run Code Online (Sandbox Code Playgroud)
我打开了一个终端,所以很明显第二个条目来自哪里。但是谁能告诉我为什么第一个条目在那里?