Linux では「query user /server:my-server-address」に相当します

Linux では「query user /server:my-server-address」に相当します

タイトルのコマンドは、ターミナル サーバーに接続されているすべてのユーザーを表示します。同じ情報を表示する同等の 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)

関連情報