Windowsでコンピュータの稼働時間と最終起動時間を確認する方法

Windowsが実際にどれくらいの時間起動しているかを把握するのは、特に問題のトラブルシューティングをしようとしている場合や、PCの稼働時間を知りたい場合は、少し難しい場合があります。いつものタスクマネージャーを使ってみるのも良いでしょう。かなり簡単ですが、どこを見れば良いのか分からない場合は、少し分かりにくいかもしれません。あるいは、コマンドプロンプトやPowerShellコマンドを使うのも良いかもしれません。いずれにせよ、私自身もこれらの方法を何度か試してみましたが、特に高速スタートアップなどの機能によって時間が変わってしまうなど、一見しただけでは数字が分かりにくい場合があります。

Windowsの稼働時間と最終起動時間を確認する方法

タスクマネージャーを使用して稼働時間を表示する

  • を実行するか、キーを押してタスクマネージャーを開きます。正直に言うと、キーの組み合わせを押す方が速いです。taskmgr.exeCtrl + Shift + Esc
  • [パフォーマンス]タブに移動し、[CPU]をクリックします。
  • 少し下にスクロールしてください。「稼働時間」は通常ウィンドウの下側にあります。これで、前回の起動からシステムがどれくらい稼働しているかがわかります。

注意:一部の設定では、高速スタートアップが有効になっている場合、この方法は必ずしも正確ではない可能性があります。Windowsは必要以上にスタートアップを難しくする必要があるためです。

コマンドプロンプトまたはPowerShellを使用して起動時間と稼働時間を確認する

  • コマンドプロンプトを使っている場合は、 と入力するだけです。 「System Boot Timesysteminfo (システム起動時間)」を探してください。これはWindowsが最後に起動した時刻です。通常は日付と時刻の形式で表示されます。
  • PowerShell で稼働時間を素早く計算するには、次のコマンドを実行します。
$boot_time = Get-CimInstance Win32_OperatingSystem | select -ExpandProperty LastBootUpTime (Get-Date) - $boot_time | select Days, Hours, Minutes, Seconds

前回の起動からの日数と時間が表示されます。理由は定かではありませんが、このコマンドは少し操作が必要な場合があります。コンピューターによっては、最初の実行では正常に動作しないこともありますが、2回目は正常に動作することが多いのです。

PowerShell のより新しくてクールな方法 – Get-Uptime コマンド

  • PowerShell 6.x以降をお使いの場合は、さらに簡単な方法があります。Get -Uptimeと入力するだけで、Get-Uptime -Since前回の再起動からの日数、時間、分数を示す、きれいにフォーマットされたTimeSpanが表示されます。
  • かなり便利だし、以前の方法よりもずっとすっきりしています。しかも、ちゃんと組み込まれています。

プロのヒント:前回の起動時間とマシンを再起動したユーザーを確認したい場合は、Windowsのイベントログを確認したり、PowerShellを使ってユーザー情報を取得したりすることもできますが、その場合、より詳細な情報を取得することはできません。簡単な確認であれば、上記の簡単なコマンドで十分でしょう。

リモートマシンの稼働時間の確認

  • リモート PC の場合は、以下を実行できます。
$remotePC='hqpc12b23' (Get-CimInstance Win32_OperatingSystem -ComputerName $remotePC).LastBootUpTime (Get-Date) - (Get-CimInstance Win32_OperatingSystem -ComputerName $remotePC).LastBootUpTime | select Days, Hours, Minutes

これは、マシンのネットワークを管理していて、どのマシンが最も長く稼働しているか、または再起動が必要なものを確認したい場合に最適です。

  • 注意:これをスムーズに動作させるには、管理者アクセスとネットワーク全体の適切な権限が必要です。
  • 高速スタートアップに関する注意

    特にWindows 10または11では、デフォルトの高速スタートアップ機能が稼働時間の計測に誤差をもたらす可能性があることにご注意ください。高速スタートアップモードでは、シャットダウンボタンを押すとWindowsはカーネルとドライバーを休止状態にするため、システムは技術的には「オフ」になりますが、実際にはオフではありません。そのため、PCが昨日シャットダウンされたにもかかわらず、稼働時間には数日前からオンになっていたと表示されることがあります。これは奇妙なことですが、Windowsの仕組みです。

    そのため、正確な稼働時間を重視する場合は、高速スタートアップを無効にすることをお勧めします(*「設定 > システム > 電源とスリープ > 追加の電源設定 > 電源ボタンの動作を選択する > 現在利用可能ではない設定を変更します」* を選択し、「高速スタートアップを有効にする」のチェックを外してください)。または、数値は大体近い値ですが、完璧ではないため、鵜呑みにしないようにしましょう。

    この簡単な概要が、Windowsの稼働時間に関する謎を解き明かしてくれることを願っています。多くの環境では、これらの方法は高速スタートアップやスリープ状態の影響で100%正確ではないものの、適切なスナップショットを提供します。

    まとめ

    • タスクマネージャーのパフォーマンス、CPUタブで稼働時間を確認できます。
    • 詳細については、systeminfoまたはPowerShellコマンドを使用してください。Get-CimInstance
    • Get -Uptimeコマンドレットは新しいPowerShellバージョンで非常に簡単に実行できます
    • 高速スタートアップは、稼働時間を実際よりも長く見せる可能性があることを覚えておいてください

    まとめ

    結局のところ、Windowsの稼働時間を確認するのは、何をチェックすればいいのかさえ分かれば、それほど難しくありません。特にシステムが遅くなったり、動作が不安定になったりする日には、前回の再起動からどれくらい時間が経過しているかを知っておくと便利です。この情報は、再起動が必要か、それとも気づかないうちに何日も稼働させていたかどうかを簡単に確認するだけでよいかを判断するのに役立ちます。ただし、これらのツールは完璧ではありませんが、大抵は十分な情報を提供してくれます。このツールが、誰かが延々と続く推測ゲームから抜け出すのに役立つことを願っています。