whoami コマンド
現在のユーザーの実効ユーザーIDを表示します。
概要
whoami
コマンドは、現在の実効ユーザーIDに関連付けられたユーザー名を表示します。これは、ターミナルセッションで現在使用されているユーザーアカウントを識別するのに役立つシンプルなユーティリティで、スクリプト内や異なるユーザーアカウント間で切り替える際に特に便利です。
オプション
whoami
コマンドは単一の明確な機能を実行するため、オプションはほとんどありません。
--help
ヘルプ情報を表示して終了します。
$ whoami --help
Usage: whoami [OPTION]...
Print the user name associated with the current effective user ID.
Same as id -un.
--help display this help and exit
--version output version information and exit
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report whoami translation bugs to <https://translationproject.org/team/>
--version
バージョン情報を出力して終了します。
$ whoami --version
whoami (GNU coreutils) 8.32
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Richard Mlynarik.
使用例
基本的な使い方
$ whoami
john
スクリプト内で現在のユーザーを確認する
$ echo "Current user is $(whoami)"
Current user is john
sudoでユーザーを切り替えた後の使用
$ whoami
john
$ sudo whoami
root
ヒント
id
コマンドとの違い
whoami
コマンドは id -un
と同等です。id
コマンドはより包括的なユーザー識別情報を提供しますが、whoami
はユーザー名のみに焦点を当てています。
シェルスクリプトでの使用
whoami
は、スクリプトを実行しているユーザーを確認するためにシェルスクリプトで特に役立ち、ユーザー識別に基づいた条件付き実行を可能にします。
ルートユーザーの確認
sudo
や su
などのコマンドを使用した後、現在ルート権限で操作しているかどうかを確認するために whoami
を使用します。
よくある質問
Q1. whoami
と who am i
の違いは何ですか?
A. whoami
は実効ユーザー名(現在実行中のユーザー)を表示しますが、who am i
(または who -m
)は元のログイン名を表示します。su
や sudo
を使用した場合は異なる場合があります。
Q2. whoami
は他のユーザーに関する情報を表示できますか?
A. いいえ、whoami
は現在の実効ユーザーに関する情報のみを表示します。他のユーザーに関する情報を取得するには、id username
や finger username
などのコマンドを使用してください。
Q3. whoami
はすべてのUnix/Linuxシステムで同じように動作しますか?
A. はい、whoami
はLinuxやmacOSを含むUnixライクなオペレーティングシステム全体で一貫した動作をする標準コマンドです。
Q4. なぜ echo $USER
の代わりに whoami
を使用するのですか?
A. whoami
は実効ユーザー(実行中のユーザー)を表示しますが、$USER
はログインユーザーを表示します。sudo
や su
を使ってユーザーを変更した場合に違いが生じます。
参考文献
https://www.gnu.org/software/coreutils/manual/html_node/whoami-invocation.html
改訂履歴
- 2025/05/05 初版