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