Linux下检测用户是否存在的方法(linux判断用户存在)

随着linux的广泛使用,常常有这样的场景:运维人员需要检测某用户是否存在,常用的方法有两种:命令行检测和编程检测。以下将介绍Linux下检测用户是否存在的方法。

一、命令行检测

最常用的检测用户是否存在的命令行操作就是使用’daemon’命令,它可以列出所有当前系统上的用户,所以可以根据当前用户是否在其列表中,来判断用户是否存在。例如:

# daemon -lu
admin
root

可以看到当前有两个用户:admin和root,以此可以判断admin用户是否存在。

另一个常用的命令是grp,它可以显示所有用户组,从而判断某个用户是否属于某个用户组。例如:

# grp man
man:x:12:nobody,root

可以看到,man用户组包含了nobody和root用户,从而可以判断nobody用户是否存在。

二、编程检测

使用编程检测用户是否存在最常用的方式是使用POSIX C库提供的函数,比如getpwnam(),它用来检测某个用户名是否存在,在头文件中,它的原型为:

structpasswd *getpwnam(constchar *name);

它会以指定的名字name,从/etc/passwd文件进行查找,返回值为struct passwd结构体,里面包含了指定帐号的所有信息,比如,name, uid, gid等,下面是一个例子:

#include
struct passwd *pw;
char * name =”root”;
if((pw = getpwnam(name)) != NULL)
{
printf("name=%s, uid=%d, gid=%d\n",
pw->pw_name, pw->pw_uid, pw->pw_gid);
}

以上为Linux下检测用户是否存在的方法,如果检测的用户过多,则编程接口效率更高。

成都创新互联科技公司主营:网站设计、网站建设、小程序制作、成都软件开发、网页设计、微信开发、成都小程序开发、网站制作、网站开发等业务,是专业的成都做小程序公司、成都网站建设公司成都做网站的公司。创新互联公司集小程序制作创意,网站制作策划,画册、网页、VI设计,网站、软件、微信、小程序开发于一体。

本文标题:Linux下检测用户是否存在的方法(linux判断用户存在)
链接分享:http://www.csdahua.cn/qtweb/news13/320713.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网