命令“who”的输出中的“(:0)”是什么意思?

dsc*_*001 14 command-line xorg who

当我输入who终端时,我得到这个输出:

$USER      tty2         2017-01-12 12:50 (:1)
Run Code Online (Sandbox Code Playgroud)

这个笑脸(:1)是什么意思?

有时这个笑脸看起来像(:0.0)。在这种情况下,这意味着什么?

关于这些不同括号的概述在哪里?

ste*_*ver 10

info页面 ( info coreutils 'who invocation')

如果没有给出非选项参数,'who' 会为当前登录的每个用户打印以下信息:登录名、终端线路、登录时间和远程主机名或 X 显示

所以(:0)简单的意思是 X 在本地主机上显示数字 0。

如果还有远程用户(例如 SSH 会话),您可能会看到类似

$ who
steeldriver tty7         2016-12-15 13:57 (:0)
steeldriver pts/4        2017-01-12 09:32 (192.168.1.4)
Run Code Online (Sandbox Code Playgroud)


Byt*_*der 7

正如您可以在联机帮助页中通过键入 找到的那样man who,您可以使用以下-H选项启用列标题:

$ who -H
NAME          LINE         TIME             COMMENT
bytecommander tty7         2017-01-12 15:26 (:0)
guest-c62iz5  tty8         2017-01-12 15:40 (:1)
Run Code Online (Sandbox Code Playgroud)

我不得不同意这并不是很有帮助,而且联机帮助页也不包含对值的任何解释。

但是,我想我可以告诉您这些列的含义:

  • NAME 是每个登录用户的用户名。
  • LINE似乎包含通过该用户登录的TTY(TTY1-6是终端,TTY7-12使用由X显示服务器,以显示图形桌面;您使用它们之间切换Ctrl+ Alt+ F1 - F12)。
  • TIME 是用户登录到当前会话的日期和时间。
  • COMMENT在我们的例子中,在大括号中显示$DISPLAY环境变量的内容(通常为:0),它也被 X 显示服务器使用。只有图形 TTY 应该具有这样的值,在终端 TTY 上,此列对我来说是空的。

    您可以使用命令检查此变量的值echo $DISPLAY。它的确切含义在例如DISPLAY=:0.0 究竟是什么意思中进行了描述?什么是DISPLAY =:0?.