Linux 如何高效率的查询用户列表

  我用的是Kali Linux做演示

  当我们使用Linux却不知道添加了多少用户,做法如下:

  1. w 命令显示目前登入系统的用户信息:
    在这里插入图片描述
      在用w命令查看当前用户后,可用su命令进行切换,
  2. cat /etc/passwd 可以查看所有用户的列表 :
    在这里插入图片描述
      缺点是,信息量太多,不是很醒目的看到有多少用户。
  3. cat /etc/group 查看用户组(效果和2一样):
    在这里插入图片描述

Linux下查看用户列表最高效的命令:

  1. cat /etc/passwd|grep -v nologin|awk -F":" ‘{ print $1"|"$3"|"$4 }’|more (最精简)
    在这里插入图片描述
  2. cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" ‘{ print $1"|"$3"|"$4 }’|more
    (如果想查看更多的内容可以改用次命令,在不同状态下会显示不同。)
    在这里插入图片描述
      命令简略讲解:
        ●  passwd 是个文本文件, 它包含了一个系统帐户列表, 给出每个帐户一些有用的信息,比如用户 ID,组 ID, 家目录, shell,等. 通常它也包含了每个用户经过加密的密码. 它通常应该是可读的(许多命令,工具程序,象 ls (1) 用它做用户 Id 到用户名称的映射),但是只允许超级用户有写方式权限。passwd此外做为命令使用时,是更改用户的密码。
        ●  /etc/nologin 文件给系统管理员提供了在 Linux 系统维护期间禁止用户登陆的方式。如果系统中存在 /etc/nologin 文件那么普通用户登陆就会失败。这是一种提高安全性和防止数据不同步现象。
          建立 /etc/nologin 文件时,我们多用touch命令,例如:touch /etc/nologin,就这么简单。
          同时,这个文件会在系统关机或者重启的时候由管理员自动创建,然后处理相应程序的退出停止工作,并在处理完工作后将 /etc/nologin 文件删除,但是如果这个时候直接按电源关机,那么在这个文件就不i会被自动删除,那么就有可能导致再次启动后,普通用户无法登陆的问题出现,只要删除文件就好了。
        ●  在第5个命令处,halt和shutdown都是用来关机的命令,只不过halt是在系统的 runlevel 为 0 或 6 ,关闭系统,否则以调用shutdown命令,并以-h参数的方式来替代(shutdown -h 也是在Linux中最安全的关机方式),halt会把所有用户都关闭,所以请慎用,而shutdown则是当前,这也是为什么halt一般在#权限下才可运行(给普通用户给予权限后也是可以的),而shutdown在任何账号下均可的原因。
         所以,读者应该明白,第5条命令的意思了,通过查看拥有关机权限的用户来判断用户数目。
        ●  而awk命令则是Linux中文件处理非常强大的命令,其实他更像一门编程语言,他可以自定义变量,有条件语句,有循环,有数组,有正则,有函数等。他读取输出,或者文件的方式是一行,一行的读,根据你给出的条件进行查找,并在找出来的行中进行操作,感觉他的设计思想,真的很简单,但是结合实际情况,具体操作起来就没有那么简单了。他有三种形势,awk,gawk,nawk,平时所说的awk其实就是gawk。在第5命令中awk 后面参数-F相当于内置变量FS, 指定分割字符。

    想要进一步了解awk命令可以点击以下链接,进一步学习了解awk命令:

      1.  Awk百度百科:
      2.  菜鸟教程 Linux awk命令详解
      3.  awk命令详细丰富的教程(1)
        awk命令详细丰富的教程(2)

猜你喜欢

转载自blog.csdn.net/qq_43515862/article/details/108922838