1 | who
|
2 | ===
|
3 |
|
4 | 显示当前所有登陆用户的信息。
|
5 |
|
6 | ## 概要
|
7 |
|
8 | ```shell
|
9 | who [OPTION]... [file] [am i]
|
10 | ```
|
11 |
|
12 | ## 主要用途
|
13 |
|
14 | - 当没有给出非选项参数时,按以下字段顺序为每个当前用户打印信息:登录用户名称,终端信息,登录时间,远程主机或X display。
|
15 | - 当用户执行 `who am i` 时,只显示运行该命令的用户的信息。
|
16 |
|
17 | ## 选项
|
18 |
|
19 | ```shell
|
20 | -a, --all 等价于调用 '-b -d --login -p -r -t -T -u'。
|
21 | -b, --boot 上次系统启动的时间。
|
22 | -d, --dead 打印 dead 状态的进程。
|
23 | -H, --heading 打印列标题行。
|
24 | -l, --login 打印系统登录进程。
|
25 | --lookup 尝试通过 DNS 规范主机名。
|
26 | -m 仅显示和标准输入关联的主机名和用户。
|
27 | -p, --process 打印由 init 生成的活动进程。
|
28 | -q, --count 列出所有已登录的用户的名称和数量。
|
29 | -r, --runlevel 打印当前运行级别。
|
30 | -s, --short 仅打印名称、行和时间(默认)。
|
31 | -t, --time 打印上次系统时钟更改。
|
32 | -T, -w, --mesg, --message, --writable 将 '+、-、?' 中的一个作为用户的消息状态添加到用户名称后面。
|
33 | -u, --users 列出登录的用户。
|
34 | --help 显示帮助信息并退出。
|
35 | --version 显示版本信息并退出。
|
36 |
|
37 | 关于 -T 选项的 '+、-、?':
|
38 | '+' 允许写入信息
|
39 | '-' 禁止写入信息
|
40 | '?' 不能查找到终端设备
|
41 | ```
|
42 |
|
43 | ## 参数
|
44 |
|
45 | file(可选):指定 `file` 代替默认的 `/var/run/utmp` 、`/etc/utmp` ;通常使用 `/var/log/wtmp` 作为参数用于查看过去登陆系统的用户。
|
46 |
|
47 | ## 返回值
|
48 |
|
49 | 返回0表示成功,返回非0值表示失败。
|
50 |
|
51 | ## 例子
|
52 |
|
53 | ```shell
|
54 | [root@localhost ~]# who
|
55 | root pts/0 2013-08-19 15:04 (192.168.0.134)
|
56 | root pts/1 2013-12-20 10:37 (180.111.155.40)
|
57 |
|
58 | [root@localhost ~]# who -q
|
59 | root root
|
60 | # users=2
|
61 |
|
62 | [root@localhost ~]# who -H
|
63 | NAME LINE time COMMENT
|
64 | root pts/0 2013-08-19 15:04 (192.168.0.134)
|
65 | root pts/1 2013-12-20 10:37 (180.111.155.40)
|
66 |
|
67 | [root@localhost ~]# who -w
|
68 | root + pts/0 2013-08-19 15:04 (192.168.0.134)
|
69 | root + pts/1 2013-12-20 10:37 (180.111.155.40)
|
70 | ```
|
71 |
|
72 | ### 注意
|
73 |
|
74 | 1. 该命令是`GNU coreutils`包中的命令,相关的帮助信息请查看`man -s 1 who`,`info coreutils 'who invocation'`。
|
75 |
|
76 |
|