ホーム > 環境・ユーティリティ > logname

logname: 実際のログインユーザー名を出力

lognameコマンドは、ユーザーがシステムに初めてログインした際に使用したユーザー名(ログイン名)を出力します。`whoami`とは異なり、`su`や`sudo`で権限が変更された後でも、元のログインユーザー名を表示します。

概要

`logname`コマンドは、ユーザーがシステムにログインセッションを開始した際に使用した名前を標準出力に表示します。これは`whoami`とは微妙ですが重要な違いがあります。`whoami`が現在コマンドを実行している「実効ユーザー(effective user)」の名前を出力するのに対し、`logname`はセッションの「実際のログインユーザー(real login user)」の名前を出力します。そのため、`sudo`や`su`コマンドで他のユーザーの権限を取得した後でも、`logname`は元のログインユーザーの名前を表示します。

主な特徴

lognameコマンドの主な特徴は以下の通りです。

  • ログインセッションを開始したユーザー名を出力します。
  • `$LOGNAME`環境変数の値に基づいて動作します。
  • 実際のログインユーザーを確認するために使用されます。
  • オプションがほとんどないシンプルなコマンドです。

lognameとwhoamiの違い

両コマンドはともにユーザー名を出力しますが、権限変更の状況では異なる結果を示します。

  • logname: 実際のログインユーザー名(real user)を出力します。`su`や`sudo`使用後も変更されません。
  • whoami: 現在コマンドを実行している実効ユーザー名(effective user)を出力します。`su`や`sudo`使用後には`root`のように変更されたユーザー名を出力します。

主なオプション

lognameコマンドは非常にシンプルで、主に`--help`や`--version`のような基本的なヘルプオプションのみが使用されます。

1) 도움말

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`logname` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

lognameコマンドのさまざまな使用例を通して機能を習得しましょう。

現在のユーザー名を確認

logname

現在ログインしているユーザー名を出力します。

suコマンド後のユーザー名の比較

logname
su
whoami
logname

`su`コマンドで`root`ユーザーに切り替えた後、`whoami`と`logname`の出力結果を比較します。`whoami`は`root`を出力しますが、`logname`は元のログインユーザー名を出力します。

インストール

lognameは`coreutils`パッケージの一部であり、ほとんどのLinuxディストリビューションにデフォルトで含まれています。別途インストールする必要はありません。

ヒントと注意事項

lognameコマンドを使用する際の注意点をまとめました。

ヒント

  • スクリプトで現在コマンドを実行しているユーザーの権限を確認するには`whoami`を、システムに接続した実際のユーザーを記録するには`logname`を使用することをお勧めします。
  • `logname`は`w`コマンドの出力結果と同様に、実際のログインユーザーを追跡するために使用できます。

関連するコマンド

機能的に類似しているか、よく一緒に使われるコマンドです。


同じカテゴリのコマンド