导读 这里是一个关于理解 Linux 中 who 的初学者指南,并带有几个例子。

who

Linux 中的 who 命令用于显示当前登录到系统中的用户的信息。它显示用户的登录名,用户登录的终端,用户登录的时间,以及远程主机名(如果有)。

语法
下面是 who 命令的基本语法:

who [OPTION]... [ FILE | ARG1 ARG2 ]
各种 who 命令和开关的例子

默认情况下,who 读取文件 /var/run/utmp,其中包含当前登录的用户的信息。如果没有指定选项,它会显示每个用户的登录名、终端和登录时间。

who

它给出了以下输出。你可以看到它显示了登录名是 debugpoint,终端 ID tty2 和登录的日期和时间。

debugpoint tty2 2023-01-01 11:22 (tty2)

who 命令 – 默认示例

然而,如果你在虚拟机中运行上述命令,你应该看到同样的情况,但终端 ID 将是 x11 服务器的显示名称,即 :0。

❯ who
debugpoint :0 2023-01-01 23:36 (:0)

要显示当前用户的用户名和信息,使用下面的方法:

whoami

使用 -b 选项查看最后一次系统启动时间:

❯ who -b
system boot 2023-01-01 23:36

显示当前系统中登录的用户数:

❯ who -q
debugpoint
users=1

所有上述命令与 -H 选项配对时,你会有一个更好的含标题行的信息,如下所示:

who -H
NAME LINE TIME COMMENT
debugpoint tty2 2023-01-01 11:22 (tty2)

如果你想在 Linux 中显示与 who 命令有关的所有信息,请使用选项 -a:

who -aH
NAME LINE TIME IDLE PID COMMENT EXIT
system boot 2023-01-01 11:19
run-level 5 2023-01-01 11:19
debugpoint + tty2 2023-01-01 11:22 13:26 2042 (tty2)

像往常一样,你可以使用下面的重定向将 who 命令的输出保存到任何文件:

who > user_details.txt
who 命令选项的例子总结

下面是一些 who 命令的例子和它们的解释:

下面是一些可以与 who 命令一起使用的选项:

  1. -a: 显示每个用户的主机名、登录时间和进程
  2. -b: 显示上次系统启动的时间
  3. -d: 显示死进程(已终止但未从 utmp 文件中删除的进程)
  4. -H: 显示标题行
  5. -l: 显示长格式的登录进程
  6. -m: 只显示在 ARG1 ARG2 指定的终端上登录的用户的名字和行。
  7. -q: 显示已登录用户的数量
  8. -u: 显示拥有未脱离进程的用户的信息
  9. -w: 显示已经登录的用户信息,格式与 utmp 文件相同

原文来自:

本文地址://q13zd.cn/command-for-beginners.html编辑:王艳敏,审核员:逄增宝

Linux命令大全:

Linux系统大全:

红帽认证RHCE考试心得: