如何检查Unix中的用户列表
时间:2019-11-20 08:52:48 来源:igfitidea点击:
Unix/Linux中如何查看所有用户?
用于检查Unix中用户列表的命令
在FreeBSD/OpenBSD/NetBSD和许多其他类似Unix的系统中:
/etc/passwd文件包含了用户名信息(出于安全原因,某些系统将加密的密码存储在单独的文件中。例如,在FreeBSD上,是/etc/master.passwd;在Linux上,是/etc/shadow文件)
/etc/group文件包含了用户组的信息。
所以通过下面的命令可以列出所有的用户账号:
$ cat /etc/passwd $ more /etc/passwd $ less /etc/passwd
/etc/passwd的文件格式
每行的字段数是一样的,例如
oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin
其中
oprofile
用户名x
加密的密码存储在一个单独的文件中16
UID(用户ID)16
GID(组ID)Special user account to be used by OProfile
注释,描述用户的一般信息/var/lib/oprofile
用户主目录/sbin/nologin
用户登录使用的shell,nologin表示不允许登录
如何只显示用户名列表
可以使用cut命令截取:
$ cut -d: -f1 /etc/passwd
或使用awk命令截取:
$ awk -F':' '{ print }' /etc/passwd
Linux如何搜索用户名是否存在
可以使用grep命令,如下所示:
$ grep '^userNameHere' /etc/passwd $ grep '^Hyman' /etc/passwd
输出示例:
Hyman:*:1001:1001:Hyman:/home/Hyman:/bin/tcsh
在Linux中如何查看正登录的用户以及他们的操作
执行以下w命令/who命令:
$ w
或者
$ who
如何查看系统上的用户组?
执行以下的命令之一:
$ more /etc/group $ less /etc/group $ grep Hyman /etc/group