who コマンドは、Linux システムに現在ログインしているユーザーの情報を表示します。
実務では、どのユーザーがどの端末からログインしているか確認する際に利用されます。
構文(Syntax)
who [オプション]
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
| (なし) | 現在ログイン中のユーザーを一覧表示 | who |
-a | すべての情報を表示(詳細モード) | who -a |
-q | ログイン中のユーザー数を表示 | who -q |
-u | ユーザーのアイドル時間も表示 | who -u |
-b | 最後のシステム起動時刻を表示 | who -b |
-r | 現在のランレベルを表示 | who -r |
実行例
現在ログイン中のユーザーを表示
who
出力例:
alice tty2 2025-08-21 09:00 (:0)
bob pts/0 2025-08-21 09:15 (192.168.1.20)
ログイン中のユーザー数を表示
who -q
出力例:
alice bob
# users=2
ユーザーのアイドル時間を確認
who -u
出力例:
alice tty2 2025-08-21 09:00 01:10 1234
bob pts/0 2025-08-21 09:15 . 1250
(「01:10」はアイドル時間、「.」は操作中を意味する)
最後のシステム起動時刻を確認
who -b
出力例:
system boot 2025-08-21 08:00
エラー例(存在しないオプションを指定)
who -z
出力例:
who: invalid option -- 'z'
関連コマンド
w: ログイン中のユーザーとプロセス稼働状況を表示users: 現在ログイン中のユーザー名のみを表示last: 過去のログイン履歴を表示lastb: 失敗したログイン履歴を表示
備考
whoは/var/run/utmpを参照して現在のログイン状態を確認します。- システムによっては
-aの内容が異なる場合があります(GNU/Linux, BSDなど)。 - 一般ユーザーでも利用可能です。
参考
- manページ: man7.org who(1)
- utmp/wtmp ファイル仕様: https://man7.org/linux/man-pages/man5/utmp.5.html

コメント