前面讲过用户管理相关内容,那是一篇对用户相关基础知识的概括文章,后面用于提升,会有更多的相关文章,这里就记录下一些“如何查看当前登录系统的用户信息”。
Linux中的用户管理相关内容
一、w命令
w命令主要用于显示
已经登录到系统的用户相关信息
以及他们
正在做的事
。该命令所使用的信息来源于/var/run/utmp文件(具体信息可执行查阅)。
实例:
[root@localhost /]# w
20:16:29 up 13 days, 4:52, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 180.161.72.224 20:10 5.00s 0.03s 0.00s w
信息详解:
列名 | 详解 |
---|---|
USER | 用户名称 |
TTY | 用户的机器名称或tty号 |
FROM | 远程主机地址 |
LOGIN@ | 用户登录系统的时间 |
IDLE | 空闲时间(作用不大) |
JCPU | 附加到tty(终端)的进程所用的时间(JCPU时间),理解为与此终端会话相关的进程所消耗CPU时间 |
PCPU | 当前进程所用时间(PCPU时间) |
WHAT | 用户当前正在使用的命令 |
这里就不列出w命令各种用法了,只例举几个常用的:
w [option]
参数 | 详解 |
---|---|
-h | 忽略头文件信息 |
-u | 显示结果的加载时间 |
-s | 不显示JCPU,PCPU,登录时间 |
实例解析
[root@localhost /]# w
20:44:40 up 13 days, 5:20, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 180.161.72.224 20:10 0.00s 0.03s 0.00s w
[root@localhost /]# w -h
root pts/0 180.161.72.224 20:10 4.00s 0.03s 0.00s w -h
[root@localhost /]# w -u
20:44:55 up 13 days, 5:20, 1 user, load average: 0.08, 0.03, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 180.161.72.224 20:10 7.00s 0.03s 0.00s w -u
[root@localhost /]# w -s
20:45:04 up 13 days, 5:20, 1 user, load average: 0.06, 0.03, 0.05
USER TTY FROM IDLE WHAT
root pts/0 180.161.72.224 0.00s w -s
二、who命令
who命令用于列举出当前已登录系统的用户相关信息(
用户名、tty号、时间日期、主机地址
)。
[root@localhost /]# who
root pts/0 2020-11-22 20:10 (180.161.72.224)
#当该用户使用多个终端登录系统,该命令就会显示多个行,每行对应一个终端。
[root@localhost /]# who | cut -d ' ' -f1 | sort
root
#只列出用户
[root@localhost /]# who | cut -d ' ' -f1 | sort | uniq
root
#只列出用户,并去重
#cut文件内容查看,显示行中的指定部分,删除文件中指定字段。
#sort排序,后跟文件名时,将以默认的方式将文本文件的第一列以ASCII 码的次序排列,并将结果输出到标准输出。
#uniq去重,除非重复行是相邻的,否则 uniq 不会删除它们。因此,你可能需要先对它们进行排序,或将排序命令与 uniq 组合以获得结果。
#上述三个常见命令这里只做了个简介,后续有时间会专门写文章进行详细介绍。
#users命令,可用于打印输出登录服务器的用户名称。该命令除了有help和version选项外,再没有其他选项。如果某用户使用了多个终端,则相应的会显示多个重复的用户名。
[root@localhost /]# users
root
#whoami命令用于显示登入的用户名。
[root@localhost /]# whoami
root
#whoami命令的执行效果和id -un的效果完全一样
[root@localhost /]# id -un
root
[root@localhost /]# who am i
root pts/0 2020-11-22 20:10 (180.161.72.224)
[root@localhost /]# who mom likes
root pts/0 2020-11-22 20:10 (180.161.72.224)
三、last命令
last命令可用于显示特定用户登录系统的历史记录。
last root则显示的是root登录系统的历史记录。
[root@localhost /]# last
root pts/0 180.161.72.224 Sun Nov 22 20:10 still logged in
root pts/1 180.161.100.170 Fri Nov 20 16:07 - 18:02 (01:54)
root pts/0 180.161.100.170 Fri Nov 20 16:05 - 18:02 (01:56)
root pts/4 180.161.100.170 Fri Nov 20 15:37 - 15:37 (00:00)
root pts/3 180.161.100.170 Fri Nov 20 15:19 - 16:02 (00:43)
root pts/2 180.161.100.170 Fri Nov 20 15:11 - 16:02 (00:51)
root pts/1 180.161.100.170 Fri Nov 20 15:11 - 16:02 (00:51)
root pts/0 180.161.100.170 Fri Nov 20 15:10 - 16:02 (00:52)
root pts/0 180.161.100.170 Fri Nov 20 10:41 - 11:37 (00:56)
root pts/0 180.161.77.44 Tue Nov 17 22:32 - 00:49 (02:17)
......
#用户名称 TTY 登录主机号 历史登录时间日期 登出时间日期 总工作时间
参考自:
https://blog.csdn.net/newdriver2783/article/details/8059368
学无止尽,Linux的世界也是浩瀚无际,继续努力!!
版权声明:本文为qq_16268979原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。