码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 根据组名查询出该组内所有成员

时间:2016-04-23 13:23:34      阅读:408      评论:0      收藏:0      [点我收藏+]

标签:

目前linux中没有直接根据组名查询组员的命令。

目前系统提供的查找组员和组之间的关系的方法有两种,

一种是:查找/etc/passwd和/etc/group目录,根据/etc/group目录里面的组的id,在/etc/passwd中查找到组内成员。

另一种是:通过groups命令,根据组员查找该组员所属组

 

我用grep和cut命令实现了通过组名查找出其内组员的功能,命令如下

# gid=`grep ‘组名‘ /etc/group | cut -d ‘:‘ -f 3` && grep ".*:x:[0-9]*:$gid" /etc/passwd |cut -d ‘:‘ -f 1

说明:

这串命令通过&&分开(&&:当前面的命令正确时,后面的命令再执行) 

&&前一段命令:先是根据组名用grep从/etc/group中查询出组名哪一行的信息,再用管道命令cut查出GID,之后将GID赋值给变量。

&&后一段命令:先是在grep中通过“正则匹配加GID”从/etc/passwd中查查询出该组内组员的各个信息(一行为一个组员),再用cut将组员的用户名“切”出来。

 

Linux 根据组名查询出该组内所有成员

标签:

原文地址:http://www.cnblogs.com/red-code/p/5424327.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!