Как узнать время работы Windows?
Какой самый простой способ узнать, как долго компьютер включен под управлением Windows?
Какой самый простой способ узнать, как долго компьютер включен под управлением Windows?
есть отличный инструмент командной строки от Microsoft uptime.exe : http://www.microsoft.com/downloads/details.aspx?FamilyID=BC18FFDB-D6FE-400B-B892-94783AE44C91&displaylang=en
Хорошо, что этот инструмент работает очень быстро.
Uptime [сервер] [/s] [/a] [/d:mm/dd/yyyyyy | /p:n] [/heartbeat] [/? | /help] имя или IP-адрес удаленного сервера для обработки. /s Отображать ключевые системные события и статистику. /a Отображать события сбоя приложения (предполагает /s). /d: Рассчитывайте только для событий после mm/dd/yyyy. /p: Рассчитывайте только для событий предыдущих n дней. / сердцебиение Включение/выключение сердцебиения системы /? Базовое использование. /помощь Дополнительная информация об использовании.
Откройте командную строку и введите:
net stats srv | find "Statistics"
Пример вывода:
>net stats srv | find "Statistics"
Server Statistics for \4IFS-SANDER
Statistics since 22/07/2009 10:14:14
Источник MS KB ).
Правка : На самом деле это скажет вам дату и время, когда ПК был поднят, а не длительность.
В Windows 7 / Windows Server 2008 и выше эта информация отображается в диспетчере задач во вкладке “Производительность”.
Это может быть быстрее, чем использование командной строки, и работает в тех случаях, когда проблемы с WMI могут помешать вам запустить systeminfo.
Если вам нужно найти это удаленно, вы можете также запустить
systeminfo /s SERVERNAME | найдите “Time:”
из командной строки.
Для тех, кому нравится использовать PowerShell, вы можете использовать ответ(ы) выше и обернуть systeminfo
в функцию PowerShell, чтобы получить результат DateTime
на момент последней **загрузки сервера :
function Get-ComputerBootTime {
param($ComputerName = (hostname))
$SystemInfo = & systeminfo /s $ComputerName | Select-String "System Boot Time")
if($SystemInfo -match "[\d/]+,\s+\S+"){
return (Get-Date $matches[0])
}
}
А затем вызовите функцию, например:
[PS]> $BootTime = Get-ComputerUptime -ComputerName MYSERVER
Чтобы получить Uptime для сервера, сравните с текущим временем:
[PS]> $UpTime = (Get-Date) - $BootTime
Это TimeSpan
, которая включает такие свойства, как TotalDays
:
[PS]> $UpTime.TotalDays
14.1827364
Иногда другая команда показывает время, которое не является правильным, поэтому я использую эту команду для отображения LOGON TIME
или короче даже:
query USER
, который печатает что-то вроде:
&00001