who

显示当前所有登陆用户的信息。

概要

1who [OPTION]... [file] [am i]

主要用途

  • 当没有给出非选项参数时,按以下字段顺序为每个当前用户打印信息:登录用户名称,终端信息,登录时间,远程主机或X display。
  • 当用户执行 who am i 时,只显示运行该命令的用户的信息。

选项

 1-a, --all                                等价于调用 '-b -d --login -p -r -t -T -u' 2-b, --boot                               上次系统启动的时间。
 3-d, --dead                               打印 dead 状态的进程。
 4-H, --heading                            打印列标题行。
 5-l, --login                              打印系统登录进程。
 6--lookup                                 尝试通过 DNS 规范主机名。
 7-m                                       仅显示和标准输入关联的主机名和用户。
 8-p, --process                            打印由 init 生成的活动进程。
 9-q, --count                              列出所有已登录的用户的名称和数量。
10-r, --runlevel                           打印当前运行级别。
11-s, --short                              仅打印名称、行和时间(默认)。
12-t, --time                               打印上次系统时钟更改。
13-T, -w, --mesg, --message, --writable    将 '+、-、?' 中的一个作为用户的消息状态添加到用户名称后面。
14-u, --users                              列出登录的用户。
15--help                                   显示帮助信息并退出。
16--version                                显示版本信息并退出。
17
18关于 -T 选项的 '+、-、?'19'+'  允许写入信息
20'-'  禁止写入信息
21'?'  不能查找到终端设备

参数

file(可选):指定 file 代替默认的 /var/run/utmp/etc/utmp ;通常使用 /var/log/wtmp 作为参数用于查看过去登陆系统的用户。

返回值

返回0表示成功,返回非0值表示失败。

例子

 1[root@localhost ~]# who
 2root     pts/0        2013-08-19 15:04 (192.168.0.134)
 3root     pts/1        2013-12-20 10:37 (180.111.155.40)
 4
 5[root@localhost ~]# who -q
 6root root
 7# users=2
 8
 9[root@localhost ~]# who -H
10NAME     LINE         time             COMMENT
11root     pts/0        2013-08-19 15:04 (192.168.0.134)
12root     pts/1        2013-12-20 10:37 (180.111.155.40)
13
14[root@localhost ~]# who -w
15root     + pts/0        2013-08-19 15:04 (192.168.0.134)
16root     + pts/1        2013-12-20 10:37 (180.111.155.40)

注意

  1. 该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 whoinfo coreutils 'who invocation'

来源:https://github.com/jaywcjlove/linux-command

最后修改于: Wednesday, January 31, 2024
欢迎关注微信公众号,留言交流。

相关文章:

翻译: