00. 目录
01. 命令概述
who命令用来打印当前登录用户信息,包含了系统的启动时间 、 活动进程 、 使用者 ID、使用终端等信息,是系统管理员了解系统运行状态的常用命令。
02. 命令格式
用法:who [选项]... [ 文件 | 参数1 参数2 ]
03. 常用选项
显示当前已登录的用户信息。
-a, --all 等于-b -d --login -p -r -t -T -u 选项的组合
-b, --boot 上次系统启动时间
-d, --dead 显示已死的进程
-H, --heading 输出头部的标题列
-l,--login 显示系统登录进程
--lookup 尝试通过 DNS 查验主机名
-m 只面对和标准输入有直接交互的主机和用户
-p, --process 显示由 init 进程衍生的活动进程
-q, --count 列出所有已登录用户的登录名与用户数量
-r, --runlevel 显示当前的运行级别
-s, --short 只显示名称、线路和时间(默认)
-T, -w, --mesg 用+,- 或 ? 标注用户消息状态
-u, --users 列出已登录的用户
--message 等于-T
--writable 等于-T
--help 显示此帮助信息并退出
--version 显示版本信息并退出
04. 参考示例
4.1 显示当前已登录的用户信息
[deng@itcast ~]$ who
deng :0 2019-07-17 08:57 (:0)
deng pts/0 2019-07-29 19:23 (:0)
deng pts/1 2019-08-02 20:11 (192.168.12.194)
[deng@itcast ~]$
第一列:显示用户名称
第二列:显示用户连接方式。tty表示用户直连主机,pts表示远程登录
第三列:显示用户登录日期
第四列:显示用户登录时间
第五列:显示用户登录的IP地址。
4.2 显示目前登入系统的用户详细信息
[deng@itcast ~]$ who -a
系统引导 2019-07-17 08:54
运行级别 5 2019-07-17 08:55
deng ? :0 2019-07-17 08:57 ? 2111 (:0)
deng + pts/0 2019-07-29 19:23 00:13 89907 (:0)
deng + pts/1 2019-08-02 20:11 . 61902 (192.168.12.194)
pts/2 2019-08-01 18:32 34901 id=ts/2 终端=0 退出=0
pts/3 2019-08-01 21:26 39431 id=ts/3 终端=0 退出=0
pts/1 2019-07-23 19:54 0 id=/1 终端=0 退出=0
pts/4 2019-07-24 18:48 34611 id=ts/4 终端=0 退出=0
pts/5 2019-07-19 19:58 62559 id=ts/5 终端=0 退出=0
pts/6 2019-07-19 16:16 62559 id=ts/6 终端=0 退出=0
[deng@itcast ~]$
4.3 列出所有已登录用户的登录名与用户数量
[deng@itcast ~]$ who -q
deng deng deng
# 用户数=3
[deng@itcast ~]$
4.4 上次系统启动时间
[deng@itcast ~]$ who -b
系统引导 2019-07-17 08:54
[deng@itcast ~]$
4.5 显示已死的进程
[deng@itcast ~]$ who -d
pts/2 2019-08-01 18:32 34901 id=ts/2 终端=0 退出=0
pts/3 2019-08-01 21:26 39431 id=ts/3 终端=0 退出=0
pts/1 2019-07-23 19:54 0 id=/1 终端=0 退出=0
pts/4 2019-07-24 18:48 34611 id=ts/4 终端=0 退出=0
pts/5 2019-07-19 19:58 62559 id=ts/5 终端=0 退出=0
pts/6 2019-07-19 16:16 62559 id=ts/6 终端=0 退出=0
[deng@itcast ~]$
4.6 输出头部的标题列
[deng@itcast ~]$ who -H
名称 线路 时间 备注
deng :0 2019-07-17 08:57 (:0)
deng pts/0 2019-07-29 19:23 (:0)
deng pts/1 2019-08-02 20:11 (192.168.12.194)
[deng@itcast ~]$
4.7 显示系统登录进程
[deng@itcast ~]$ who -l
4.8 只面对和标准输入有直接交互的主机和用户
[deng@itcast ~]$ who -m
deng pts/1 2019-08-02 20:11 (192.168.12.194)
[deng@itcast ~]$
4.9 显示当前的运行级别
[deng@itcast ~]$ who -r
运行级别 5 2019-07-17 08:55
[deng@itcast ~]$
4.10 只显示名称、线路和时间(默认)
[deng@itcast ~]$ who -s
deng :0 2019-07-17 08:57 (:0)
deng pts/0 2019-07-29 19:23 (:0)
deng pts/1 2019-08-02 20:11 (192.168.12.194)
deng pts/2 2019-08-02 20:30 (192.168.12.194)
[deng@itcast ~]$
4.12 列出已登录的用户
[deng@itcast ~]$ who -u
deng :0 2019-07-17 08:57 ? 2111 (:0)
deng pts/0 2019-07-29 19:23 00:21 89907 (:0)
deng pts/1 2019-08-02 20:11 . 61902 (192.168.12.194)
deng pts/2 2019-08-02 20:30 . 61902 (192.168.12.194)
[deng@itcast ~]$
4.13 用+,- 或 ? 标注用户消息状态
[deng@itcast ~]$ who -T
deng ? :0 2019-07-17 08:57 (:0)
deng + pts/0 2019-07-29 19:23 (:0)
deng + pts/1 2019-08-02 20:11 (192.168.12.194)
deng + pts/2 2019-08-02 20:30 (192.168.12.194)
或者
[deng@itcast ~]$ who -w
deng ? :0 2019-07-17 08:57 (:0)
deng + pts/0 2019-07-29 19:23 (:0)
deng + pts/1 2019-08-02 20:11 (192.168.12.194)
deng + pts/2 2019-08-02 20:30 (192.168.12.194)
[deng@itcast ~]$
+:允许写信息;
-:不允许写信息;
?:不能找到终端设备。
4.14 显示由 init 进程衍生的活动进程
[deng@itcast ~]$ who -p
4.15 列出所有已登录用户的登录名与用户数量,并且显示头部的标题列
[deng@itcast ~]$ who -aH
名称 线路 时间 空闲 进程号 备注 退出
系统引导 2019-07-17 08:54
运行级别 5 2019-07-17 08:55
deng ? :0 2019-07-17 08:57 ? 2111 (:0)
deng + pts/0 2019-07-29 19:23 00:30 89907 (:0)
deng + pts/1 2019-08-02 20:11 . 61902 (192.168.12.194)
deng + pts/2 2019-08-02 20:30 00:08 61902 (192.168.12.194)
pts/3 2019-08-01 21:26 39431 id=ts/3 终端=0 退出=0
pts/1 2019-07-23 19:54 0 id=/1 终端=0 退出=0
pts/4 2019-07-24 18:48 34611 id=ts/4 终端=0 退出=0
pts/5 2019-07-19 19:58 62559 id=ts/5 终端=0 退出=0
pts/6 2019-07-19 16:16 62559 id=ts/6 终端=0 退出=0
[deng@itcast ~]$