コンピュータへログオンした時間(時刻)を調べたいことがある。userコマンドやターミナル・サーバ・マネージャを利用するとよい。解説ログオンしたまま、ずっと使われていないコンピュータがある場合、セキュリティや管理などの目的のために、誰がいつログオンしたかを調べたくなることがある。使っているユーザー名やログオン時間(ログオンした時刻)が分かれば、シャットダウンや、本人に連絡するなどの措置が取れるからだ。このうち、ログオンしたユーザー名を調べるのは簡単だろう。デスクトップの状態を見たり、[Ctrl+Alt+Del]キーを押してセキュリティ・ダイアログを表示させたりすればよい。OSの標準的な機能としては特に用意されていない。9xでは、ユーザーはログオン・ダイアログを[ESC]キーでスキップすることができた)。ターミナル・サービス(リモート・デスクトップ)機能が導入された結果、同時に複数のユーザーがコンピュータにログオンできるようになり、ユーザーごとの個別環境(セッション)が実現できるようになった。このセッションの状態を確認するために、queryコマンドなどが用意された。これを使えば、ユーザーがいつログオンしたか(いつセッションが開始されたか)が分かる。操作方法queryコマンドでログオン時間を調べるquery.exeコマンドは、ターミナル・サービス(リモート・デスクトップ)を利用している各ユーザーのセッションやプロセスなどの状態を調査、表示するコマンドである。/?」を実行すると使い方が表示される)、userというオプションを付けると、ログオンしているユーザーの情報が分かるが、その中に「ログオン時刻」という情報がある。2003におけるqueryコマンドの実行例。リモート・デスクトップ経由でも利用しているので、2人のユーザーがログオンしている。ログオン時間は右端に表示されている。queryコマンドの使い方の表示。processやsession、userなどのパラメータを付けて実行すること。userコマンドを実行する。先頭に「>」が付いているのが自分自身を表す。セッション名が「console」となっているのが実際の物理コンソールからのログオン、「rdp-〜」となっているのがリモートからのログオンをそれぞれ表す。ログオンした時間(セッションが開始された時間)。userコマンドは、実際にはquser.exeというコマンドを呼び出しているだけなので、これでも実行可能。この例では、2人のユーザーがログオンしていることが分かる。管理者権限がない場合は、自分自身の情報しか表示されない。右端に表示されているのがログオン時間である。XPでは、ユーザーの簡易切り替えが有効になっている場合にのみ[ユーザー]タブが表示される。ドメイン・ネットワークの場合は表示されない。sessionやqwinsta.exeでユーザー一覧を取得できる)。userコマンドは、実際には内部でquser.exeという別のコマンドを呼び出しているだけである。そのため単にquserを実行するだけでも実行できる。マネージャ]ツール)を導入していないと利用できない。c:\windows\system32などとして、展開、コピーしておくとよいだろう(expandは圧縮されたイメージを展開するコマンド)。userコマンドはターミナル・サービスのユーザー名を表示させるためのコマンドである。マネージャ]ツールでも確認できる(ローカル・コンピュータに接続して確認すればよい)。マネージャ]によるセッションの確認。2003の例だが、クライアント・コンピュータ上にインストールしたサーバ用管理ツールでも同様に利用できる。