我想获取允许登录的所有用户的邮件地址列表。我怎样才能做到这一点?
我已经/etc/passwd
使用GECOS 字段设置了邮件地址,即 via 。sudo chfn some_user -o [email protected]
这可以使用 awk 来完成:
awk -F : '{print $5}' /etc/passwd | awk -F , '{print $5}'
但是,我想排除帐户已过期的用户。
用户过期信息存储在/etc/shadow
. 有 Python 模块spwd,但它已被弃用,并且它的后继者似乎无法检查帐户是否仍然有效。
该命令chage -l my_user
显示到期日期,但需要 root 权限才能获取其他用户的信息,即使每个人都可以读取影子文件。
除了保质期外,还有什么需要注意的吗?