5、用户登录记录

本节主要学习在Linux系统下用户登录记录的相关命令这些命令有w、who、whoami等。

5.1 w用于显示目前登入当前计算机的用户信息

使用w命令可以详细查询已登录当前计算机的用户。w命令的输出信息顺序如下登录账号、终端名称、远程主机名、登录时间、JCPU、PCPU、当前正在运行进程的命令行。


5.1.1 命令语法

w[选项][用户]


5.1.2 选项参数

                                                                              w命令选项含义


选项选项含义
-f关闭显示用户从何处登录系统不显示FROM字段信息
-h不显示各字段的标题信息
-l使用详细格式列表
-s使用简洁格式列表


5.1.3实例

例1显示当前用户

w  //显示当前用户不显示登录位置

19:50:14 up 9:27, 4 users, load average: 0.31, 0.26, 0.18

USER   TTY   FROM       LOGIN@  IDLE  JCPU  PCPU WHAT

root   tty7   :0        Thu12  31:39m 10:10  0.60s gnome-session

root   pts/0  :0.0       17:09  2:18m 15.26s 0.15s bash

root   pts/1  192.168.1.7   18:51  1.00s 1.24s 0.14s -bash

root   pts/2  192.168.1.7   19:48  60.00s 0.05s 0.05s -bash


例2不显示登录位置

w -f

19:53:59 up 9:31, 4 users, load average: 0.05, 0.16, 0.15

USER   TTY    LOGIN@  IDLE  JCPU  PCPU WHAT

root   tty7   Thu12  31:43m 10:10  0.60s gnome-session

root   pts/0   17:09  2:21m 15.26s 0.15s bash

root   pts/1   18:51  0.00s 1.04s 0.14s -bash

root   pts/2   19:48  4:45  0.05s 0.05s -bash


例3以精简模式显示

w -s

19:54:37 up 9:31, 4 users, load average: 0.24, 0.19, 0.16

USER   TTY   FROM        IDLE WHAT

root   tty7   :0        31:43m gnome-session

root   pts/0  :0.0       2:22m bash

root   pts/1  192.168.1.7   0.00s -bash

root   pts/2  192.168.1.7   5:23 -bash


例4不显示标题

w -h

root   tty7   :0        Thu12  31:44m 10:10  0.60s gnome-session

root   pts/0  :0.0       17:09  2:23m 15.26s 0.15s bash

root   pts/1  192.168.1.7   18:51  0.00s 1.05s 0.14s -bash

root   pts/2  192.168.1.7   19:48  5:54  0.05s 0.05s -bash


5.2 who显示已登录当前计算机用户的简单信息

使用who命令可以用于显示系统中有哪些使用者正在上面显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等。

使用权限所有使用者都可使用。


5.2.1 命令语法

who[选项][记录文件]


5.2.2选项参数

                                                                         who命令选项参数含义


选项选项含义
-H输出头部的标题列
-b上次系统启动时间
-u列出已登录的用户
-l显示系统登录进程
-m只面对和标准输入有直接交互的主机和用户
-q列出所有已登录用户的登录名和用户数量
-s只显示名称、线路和时间
-w显示用户名的信息状态栏
-p显示由init进程衍生的活动进程
-d显示已死的进程
-r显示当前的运行级别


5.2.3实例

例1显示当前登录系统的用户

# who  //显示当前登录系统的用户

root   tty7     2015-08-22 12:12 (:0)

root   pts/0    2015-08-22 17:09 (:0.0)

root   pts/1    2015-08-22 18:51 (192.168.1.7)

root   pts/2    2015-08-22 19:48 (192.168.1.7)


例2显示标题栏

# who -H

NAME   LINE     TIME       COMMENT

root   tty7     2015-08-22 12:12 (:0)

root   pts/0    2015-08-22 17:09 (:0.0)

root   pts/1    2015-08-22 18:51 (192.168.1.7)

root   pts/2    2015-08-22 19:48 (192.168.1.7)


例3显示用户登录来源

# who -l -H

NAME   LINE     TIME       IDLE     PID COMMENT

LOGIN  tty4     2015-08-22 12:11        852 id=4

LOGIN  tty5     2015-08-22 12:11        855 id=5

LOGIN  tty2     2015-08-22 12:11        862 id=2

LOGIN  tty3     2015-08-22 12:11        864 id=3

LOGIN  tty6     2015-08-22 12:11        867 id=6

LOGIN  tty1     2015-08-22 12:11       1021 id=1


例4显示终端属性

# who -T -H

NAME    LINE     TIME       COMMENT

root   + tty7     2015-08-22 12:12 (:0)

root   + pts/0    2015-08-22 17:09 (:0.0)

root   - pts/1    2015-08-22 18:51 (192.168.1.7)

root   - pts/2    2015-08-22 19:48 (192.168.1.7)


例5只显示当前用户

# who -m -H

NAME   LINE     TIME       COMMENT

root   pts/1    2015-08-22 18:51 (192.168.1.7)


例6精简模式显示

# who -q

root root root root

# users=4


5.3 whoami用于显示自身用户名称。

    显示自身的用户名称本指令相当于执行"id -un"指令。

whoami 命令也用于当你使用 su 命令切换用户时, 它能让你确认登录的用户名是否正确。whoami 和 who 命令不相同 who 命令会显示所有已经登录的用户名而 whoami 不是。当你切换用户时whoami 命令会显示会话所属的当前用户而 who 命令会显示你切换前的那个源用户。

 

5.3.1命令语法

whoami [--help][--version]


5.3.2参数说明

--help  在线帮助。

--version  显示版本信息。


5.3.3实例

显示用户名

# whoami 

root