Windows가 마지막으로 다시 시작된 시간을 어떻게 알 수 있습니까?


105

Windows 7을 실행하는 컴퓨터가 마지막으로 다시 시작된 시점을 어떻게 알 수 있습니까?

이벤트 로그를 검색하지 않고 명령 과 비슷 wmic하거나 어쩌면 cmd명령을 포함하는 솔루션을 선호 합니다.

답변:


164

systeminfo명령은 당신이 필요로하는 거의 옳습니다. 영어 Windows 7에서도 다음을 수행 할 수 있습니다.

systeminfo | find /i "Boot Time"

또는 WMIC 의 도움으로 :

wmic os get lastbootuptime

Windows 7에서 Windows 7과 Windows XP의 주요 차이점은 Microsoft가 마지막 부팅 시간 만 표시 할 수 있다는 것입니다.


또한 작업 관리자에서 :

여기에 이미지 설명을 입력하십시오


또한 마지막 재설정 의 누적 목록이 있습니까?
— Royi Namir

2
@RoyiNamir : 일부 인터넷 검색 재부팅 목록 (매우 비슷해 보입니다) :Get-EventLog -LogName System | where { ($_.InstanceId -bAnd 0xFFFF) -eq 6006 }
— m0nhawk

powershell입니다 .....?
— Royi Namir

3
주의하십시오 systeminfo지역화됩니다. 그래서 "Boot Time"윈도우의 영어 버전에만 해당됩니다.
— Markus Mitterauer

1
systeminfo | find /i "Systemstartzeit"독일어
— schoetbi

24

이를 수행하는 또 다른 방법은 Windows XP와 Windows 7에서 모두 작동하는 다음 명령 줄을 사용하는 것입니다.

net statistics workstation

systeminfo날짜 형식을 지정하는 동안 다른 것보다 빠르다는 이점이 있습니다 ( wmic그렇지 않습니다). 컴퓨터를 디버깅하기 위해 실제로이 명령을 사용하는 경우 유용 할 수있는 몇 가지 정보가 있습니다 (구체적으로 요청하기 때문에 cmd프로그래밍 방식으로 수행하지 않는다고 가정 함).

net statistics명령 에 대한 자세한 내용은 여기 ( http://technet.microsoft.com/en-us/library/bb490714.aspx)를 참조 하십시오.

다음은 결과의 예입니다 (프랑스어 Windows 7 Pro SP1 x64를 사용하는 경우 사용자 언어는 명령 줄에별로 중요하지 않음).

예

(컴퓨터 이름이 의도적으로 흐리게 표시됨)


시스템 가동 시간을 결정할 때의 정확성 에 대한 http://en.wikipedia.org/wiki/Uptime 에 대한 자세한 내용


중요 사항 :이 방법은 컴퓨터의 가동 시간이 아니라 마지막으로 부팅 된 시간을 결정합니다. 절전 / 최대 절전 모드를 사용하는 경우 2 개의 숫자가 달라집니다.


이것이 왜 systeminfo 또는 wmic를 사용하는 것과 동일하게 읽히지 않는지에 대한 아이디어는 ... 무시할 만하지 만 내 시스템에서는 2 분 이상 다릅니다.
— Anthony Shaw

내 컴퓨터에서도 aobut 40 초 동안 다릅니다. 왜 그것이 정확히 같지 않은지 전혀 모르겠습니다. 서비스가 조금 후자라고 생각합니다. en.wikipedia.org/wiki/Uptime
— dnLL

2
내 경우 9 개월 이상 차이가 난다 :-) 이것은 유일한 정답입니다. wmic작업 관리자와 마지막 부팅의 실제 날짜 스탬프를 제공합니다 (또는 부팅 후 관련 서비스가 시작된 시점에 매우 근접한 경우) . 작업 관리자는 systeminfo모두 PC가 틱 수만큼 현재 시간부터 거꾸로 계산하는 것처럼 보입니다. 달리는. 그러나 컴퓨터를 절전 모드 (또는 최대 절전 모드)로 설정하면 실제 총 실행 시간이 마지막 부팅 이후의 시간 (지난 몇 달 동안 30 일)보다 훨씬 짧아집니다. 그 계산을 완전히합니다.
— Cameron

@cameron에게 감사합니다. 대답 끝에 메모를 추가했습니다. 원래 질문은 컴퓨터가 시작된 시간과 가동 시간이 아니라 실제로 중요한 문제였습니다. Wikipedia는 내가 링크 한 가동 시간 기사의 차이점을 다소 언급합니다.
— dnLL

실제로 "부트"시간이 아닙니다. 통계를 쿼리하는 시간에 따라 서버 또는 워크 스테이션 서비스가 시작된 시간입니다. 이것들은 일반적인 Windows 세션 중에 멈추지 않기 때문에 마지막 부팅 시간의 근사치입니다.
— oldmud0 2016 년

18

클래스 의 LastBootUpTime속성 이 있습니다 Win32_OperatingSystem. 이 명령으로 WMIC를 사용할 수 있습니다.

wmic os get lastbootuptime

또는 Powershell을 사용하는 경우 시간을 성가신 WMI 날짜 / 시간 형식보다 읽기 쉬운 것으로 변환 할 수 있습니다.

Get-WmiObject -class Win32_OperatingSystem | Select-Object  __SERVER,@{label='LastBootUpTime';expression={$_.ConvertToDateTime($_.LastBootUpTime)}}

이후 버전의 PowerShell에서는 Get-CimInstance를 사용하여 값을 자동으로 날짜 / 시간으로 반환합니다.

Get-CimInstance -Class Win32_OperatingSystem | Select-Object LastBootUpTime

유일한 자극은 Get-CimInstance가 때때로 __SERVER와 같은 WMI 개체의 일부 시스템 필드 이름을 변경한다는 것입니다. CSName나 중 하나를 사용해야합니다 PSComputerName.


20121217175810.414696+120시간을 계산하려면 좋은 계산기가 필요하다고 생각합니다
— Royi Namir

7
@Royi 네, WMI 타임 스탬프는 바보입니다. 그것은 A의 CIM_DATETIME표준에서 요구하는 형식이다. 그것은의 yyyymmddHHMMSS.mmmmmmsUUU24 시간 시간을 사용. 여기서 마지막 재부팅 시간은 2012 년 12 월 17 일 오후 5:58입니다. msdn.microsoft.com/en-us/library/windows/desktop/...
— 베이컨 비트

1
get-wmiobject 방법을 사용하면 원격 컴퓨터의 부팅 시간도 간단하게 얻을 수 있습니다. "-computer <computername>"을 명령에 추가하십시오 (파이프 앞)
— camster342

8

거기에 Windows 10 사용자의 경우 ....

시스템 속성 Windows 10-성능 가동 시간


1
이것은 OP가 요청한대로 시스템이 시작된 시간이 아닌 가동 시간 (즉, 시스템 실행 시간)을 나타냅니다.
— Dawid Ferenczy Rogožan

1
사실이지만 여전히 유용합니다.
— tbc0

오늘날 내 Windows 10 노트북은 가짜 가동 시간을 보여줍니다. 어젯밤에 시스템을 종료하고 한 시간 이내에 전원을 켰으며 작업 관리자는 5 : 19 : 40 : 10에 대한 상태라고 말합니다.
— tbc0

Windows 10은 종료 할 때 실제로 종료되지 않습니다. 왜 그런지 정확히 잊어 버렸습니다. 그러나 가동 시간 타이머를 재설정하려면 다시 시작해야합니다.
— Daniel Hayes

3

Alex 가 지적한 것처럼 이 /sleepstudy명령은 Windows 8.1까지 추가되지 않았습니다. / systempowerreport 가 대신 작동 할 수 있습니다.

예를 들어 이벤트 로그를 검색하면 항상 일부 항목이 누락 된 것처럼 이러한 다른 답변 중 일부는 저에게 효과적이지 않았습니다. @Florisz의 대답은 그 점에서도 정확합니다. 내 해결책은 다음과 같습니다.

관리자 cmd 쉘에서 다음 명령을 실행하십시오.

powercfg /sleepstudy /output sleepstudy.html

그런 다음 sleepstudy.html브라우저 에서 파일 을여십시오. 지난 3 일 동안의 종료 / 재부팅 / 대기 / 최대 절전 모드에 대한 놀랍도록 체계적인 통계가 표시 됩니다 . (필요한 경우 주기적으로 실행)

출력 예 : (AFAIR, Showdown (Hybrid)빠른 시작을 의미)

여기에 이미지 설명을 입력하십시오

출처 / 문서 | 또한 관련


1
이것이 내가 Windows 10에서 찾고 있었던 것입니다! 재부팅하지 않고 정상적으로 종료합니다. LastBootTime은 Windows 10에서의 재부팅 만 나타냅니다.
— tbc0

2

Windows 7에서는 선호합니다

net statistics workstation

WMIC는 휴면 시간을 고려하지 않으며 일주일 동안 휴면 상태 일 때 내 워크 스테이션을 잠가두고 다음날 깨울 준비를합니다.


2

배치 파일의 또 다른 방법은 wmic로 부팅 시간을 얻지 만 사람이 읽을 수있는 형식입니다.

for /f %%a in ('WMIC OS GET lastbootuptime ^| find "."') DO set DTS=%%a
set BOOTTIME=%DTS:~0,4%-%DTS:~4,2%-%DTS:~6,2%  %DTS:~8,2%:%DTS:~10,2%
echo DTS      : %DTS%
echo BOOTTIME :%BOOTTIME%

출력 :

DTS : 20170308073729.491206 + 060

BOOTTIME : 2017-03-08 07:37


1
이 답변은 set BOOTTIME작동 방식에 대한 설명이 포함되어 있으면 더 좋습니다 .
— CVn

2

PowerShell에서 가져 오려면 :

Function Get-LastBoot {
        if ($Host.Version.Major -lt 3) {
            Get-WmiObject win32_operatingsystem | Select-Object CSname, @{n = 'LastBootUpTime'; e = {$_.ConverttoDateTime($_.lastbootuptime)}}
        }
        else {
            Get-CimInstance -ClassName win32_operatingsystem | Select-Object CSname, LastBootUpTime
        }
    }

결과는 다음과 같습니다.

CSname  LastBootUpTime
------  --------------
LAPTOP1 2018-09-07 08:57:02

1

거의 모든 버전의 창에서 스왑 파일의 타임 스탬프를 확인할 수 있습니다.

dir /a:hc:\pagefile.sys


1
나는 그렇게 생각하지 않습니다. 적어도 Windows 10에서는 확인했을 때 스왑 파일 시간이 부팅 시간보다 최신이었습니다.
— tbc0

1

비슷한 ServerFault 질문 에서 Windows 시스템 이벤트 로그에서 이벤트 ID를 검색 / 필터링하십시오 6009.

: 윈도우 10에서 Event Viewer > Windows Logs > System다음 Filter Current Log...작업.


1

이를 위해 PowerShell을 사용할 수 있습니다.

일시 휴업


Get-WinEvent -LogName Microsoft-Windows-Diagnostics-Performance/Operational | Where { $_.Id -eq 200 }

기록 된 종료 시간 목록이 표시됩니다.

원격 연결에 최적화 된 대체 명령 :

Get-WinEvent -FilterHashtable @{LogName = "Microsoft-Windows-Diagnostics-Performance/Operational"; Id = 200; }

출력 예 :

TimeCreated                     Id LevelDisplayName Message
-----------                     -- ---------------- -------
2017-01-28 18:25:46            200 Critical         Windows has shutdown
2016-11-01 19:55:21            200 Error            Windows has shutdown
2016-10-29 00:18:38            200 Critical         Windows has shutdown
2016-10-26 23:16:55            200 Warning          Windows has shutdown
2016-10-26 15:37:40            200 Warning          Windows has shutdown
2016-10-26 02:18:24            200 Warning          Windows has shutdown
2016-10-26 02:10:34            200 Warning          Windows has shutdown
2016-10-26 02:04:01            200 Warning          Windows has shutdown
2016-10-25 14:23:11            200 Warning          Windows has shutdown
2016-10-25 13:07:46            200 Error            Windows has shutdown
2016-10-25 00:18:12            200 Error            Windows has shutdown
2016-10-19 13:16:39            200 Critical         Windows has shutdown

스타트 업


다음 명령은 기록 된 시작 시간 목록을 제공합니다.

Get-WinEvent -LogName Microsoft-Windows-Diagnostics-Performance/Operational | Where { $_.Id -eq 100}

원격 연결에 최적화 된 대체 명령 :

Get-WinEvent -FilterHashtable @{LogName = "Microsoft-Windows-Diagnostics-Performance/Operational"; Id = 100; }

출력 예 :

TimeCreated                     Id LevelDisplayName Message
-----------                     -- ---------------- -------
2017-10-07 21:35:38            100 Critical         Windows has started up
2017-01-28 18:25:48            100 Critical         Windows has started up
2016-12-11 17:45:07            100 Critical         Windows has started up
2016-11-16 13:26:52            100 Critical         Windows has started up
2016-11-01 19:55:21            100 Critical         Windows has started up
2016-10-29 00:18:39            100 Critical         Windows has started up
2016-10-26 23:16:55            100 Error            Windows has started up
2016-10-26 14:51:07            100 Error            Windows has started up
2016-10-26 02:24:01            100 Error            Windows has started up
2016-10-26 02:18:24            100 Critical         Windows has started up
2016-10-26 02:10:34            100 Error            Windows has started up
2016-10-26 02:04:01            100 Critical         Windows has started up
2016-10-25 14:23:12            100 Error            Windows has started up
2016-10-25 13:07:47            100 Error            Windows has started up
2016-10-25 12:56:23            100 Error            Windows has started up
2016-10-19 13:16:39            100 Critical         Windows has started up

PowerShell 5.1 및 Windows 10.0.15063에서 이것을 테스트했습니다. 그러나 PowerShell 3.0 이상인 경우 Windows 7에서도 작동합니다. 관리자 권한으로 실행해야합니다.

docs.microsoft.com 명령에 대한 전체 설명서를 찾을 수 있습니다.


Windows 10에서는 작동하지 않았습니다. 관리자도 아닙니다. snag.gy/HcEn8j.jpg
— tbc0

1

몇 가지 답변 net statistics workstation이 언급되어 있으며 두 가지 모두 언급했습니다.

net statistics server

과

net statistics workstation

마지막 부팅 관련 데이터를 제공해야합니다 Statistics since ....

그러나 일부 OS 버전 (예 : Svr2008 / 6.0)은를 1/1/1980 12:00사용할 때 날짜로 돌아갑니다 server. 그래서 기본값은 workstation입니다.

또한 일부 명령을 축약 net stats workstation하여 동일한 결과를 얻을 수 있습니다. 마지막으로 시스템에서 시스템으로 이동하면 기본 CMD 상자가 명령의 모든 결과를 표시 할만큼 크지 않습니다. more부팅 시간을보기 위해 위로 스크롤하지 않도록 출력을 파이프합니다 . 따라서 기본 명령은 다음과 같습니다.

net stats workstation | more

명령


1

또한 '재시작'또는 '재부팅'이 완료되면 이러한 모든 명령이 실제로 타임 스탬프를 제공한다는 점을 덧붙이고 싶습니다. 그리고 종료 및 시작이 완료되지 않은 경우. 종료 후 'lastbootuptime'은 실제 부팅 시간이 아니라 시스템이 실제로 '다시 시작된'시간을 반영합니다. 따라서 shutdown / start는 LastBootUpTime 타임 스탬프에 대해 suspend / hybernnate에서 돌아 오는 것과 동일한 결과를 제공합니다.


0

최대 답변과 동일 ...

for /f %%a in ('WMIC OS GET lastbootuptime ^| find "."') DO set DTS=%%a
set BOOTTIME=%DTS:~0,4%-%DTS:~4,2%-%DTS:~6,2%  %DTS:~8,2%:%DTS:~10,2%
echo DTS      : %DTS%
echo BOOTTIME :%BOOTTIME%

...하지만 oneliner에서 :

for /f %a in ('WMIC OS GET lastbootuptime ^| find "."') DO set DTS=%a && echo %DTS:~0,4%-%DTS:~4,2%-%DTS:~6,2% %DTS:~8,2%:%DTS:~10,2%

이 wmi 구현은 약간 복잡하게 보일 수 있지만 다른 powershell 또는 systeminfo 구현과 비교할 때 매우 빠르며 코드에서 명시 적이므로 형식을 쉽게 변경할 수 있습니다.

맥스 감사합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.