在 Unix/Solaris 中验证用户名

Posted

技术标签:

【中文标题】在 Unix/Solaris 中验证用户名【英文标题】:Validate the user name in Unix/Solaris 【发布时间】:2012-04-19 01:44:39 【问题描述】:

是否有任何 C API 用于验证用户名?

我正在输入当时可能不存在的用户名。 由于用户名需要遵循 POSIX 规则,是否有任何 C API 可以进行验证?

【问题讨论】:

另见以下问题:***.com/questions/6949667/… 【参考方案1】:

我假设您正在尝试确定您正在运行的系统上是否存在用户名。为此,您正在寻找 getwpent()/getpwnam() -- 查看手册页了解详细信息。

尽管这些返回的信息比您想要的多,getpwnam() 也会(轻松)告诉您是否存在与给定用户名对应的密码文件条目。

(如果您只是想确保用户名仅包含有效字符,请确保它仅包含 [A-Za-z0-9_]+

【讨论】:

用户名应该不是纯数字;至少,如果用户名看起来像一个数字,您可能会感到困惑(如果 UID 与名称不是同一个数字,那么您可能会感到困惑——是的,您可以这样做;不,您不应该这样做!)。跨度> 是的,这是真的。我想正确的正则表达式是 [A-Za-z_][A-Za-z_0-9]*

以上是关于在 Unix/Solaris 中验证用户名的主要内容,如果未能解决你的问题,请参考以下文章

java入门---windows和Linux,UNIX,Solaris,FreeBSD下开发环境配置

Laravel-任务调度

定时任务调度在 Laravel 中的实现

[ Laravel 5.6 文档 ] 进阶系列 —— 任务调度

JMeter基础

在 PHP 中访问 HTTP 身份验证用户名?