
タイトルのコマンドは、ターミナル サーバーに接続されているすべてのユーザーを表示します。同じ情報を表示する同等の Linux コマンドはありますか?
答え1
おそらく、簡単なwho
コマンドで適切なリストがここに表示されます。
コマンドもありますw
。
答え2
w
ユーザーに関するコンテキストをもう少し詳しく知るには、この簡単なw
コマンドで、ログインしているユーザーとそのユーザーの作業内容の一覧を表示します。この情報は の出力に似た形式で表示されますがwho
、表示されるのは、ユーザーがアイドル状態だった時間、ログイン TTY に接続されているすべてのプロセスで使用された CPU 時間、および現在のプロセスでのみ使用された CPU 時間です。ユーザーの現在のプロセスは、最後のフィールドに一覧表示されます。
サンプル出力:
$ w
13:45:48 up 29 days, 19:24, 2 users, load average: 0.53, 0.52, 0.54
USER TTY LOGIN@ IDLE JCPU PCPU WHAT
seth tty2 Sun18 43:22m 0.01s 0.01s /usr/libexec/gnome-session-binary
curly pts/2 13:02 35:12 0.03s 0.03s -bash
-i
またはオプションを使用してユーザーの IP アドレスを表示することもできます--ip-addr
。
情報を取得したいユーザーを指定することで、出力を単一のユーザー名に絞り込むことができます。
$ w seth
13:45:48 up 29 days, 19:27, 2 users, load average: 0.53, 0.52, 0.54
USER TTY LOGIN@ IDLE JCPU PCPU WHAT
seth tty2 Sun18 43:25m 0.01s 0.01s /usr/libexec/gnome-session-binary
追伸
システムに誰がログインしているかがわかれば、 を使用してps
現在のプロセスのスナップショットを取得できます。
--user
(または) オプションと、レポートを希望するユーザー名を指定すると、1 人のユーザーによって実行されているすべてのプロセスを取得できます-u
。どのプロセスが子プロセスの親であるかという追加のコンテキストを出力に表示するには、--forest
「ツリー」ビューの オプションを使用します。
$ ps --forst --user larry
PID TTY TIME CMD
39707 ? 00:00:00 sshd
39713 pts/4 00:00:00 \_ bash
39684 ? 00:00:00 systemd
39691 ? 00:00:00 \_ (sd-pam)