Skąd mam wiedzieć, kiedy mój komputer z systemem Windows 7 został ostatnio ponownie uruchomiony?
Wolę rozwiązanie, które nie wymaga przeszukiwania dziennika zdarzeń, ale coś podobnego wmic
lub może cmd
polecenia.
windows-7
command-line
wmic
Royi Namir
źródło
źródło
Get-EventLog -LogName System | where { ($_.InstanceId -bAnd 0xFFFF) -eq 6006 }
systeminfo
jest zlokalizowany. Tak"Boot Time"
to prawda tylko w angielskiej wersji systemu Windows.systeminfo | find /i "Systemstartzeit"
dla niemieckiegoInnym sposobem na to jest użycie następującego wiersza polecenia, który działa zarówno w systemie Windows XP, jak i Windows 7:
Ma tę zaletę, że jest szybszy niż
systeminfo
alternatywa podczas formatowania daty (cowmic
nie). Otrzymasz także kilka innych informacji, które mogą być przydatne, jeśli faktycznie używasz tego polecenia do debugowania komputera (ponieważ pytasz o to konkretniecmd
, zakładam, że nie robisz tego programowo).Więcej informacji na temat
net statistics
polecenia można znaleźć tutaj: http://technet.microsoft.com/en-us/library/bb490714.aspxOto przykład wyniku (przy użyciu francuskiej kopii systemu Windows 7 Pro SP1 x64 język użytkownika nie ma większego znaczenia dla wiersza polecenia):
(nazwa komputera jest celowo zamazana)
Więcej informacji na http://en.wikipedia.org/wiki/Uptime na temat dokładności przy określaniu czasu pracy systemu.
Ważna uwaga : ta metoda określa czas ostatniego uruchomienia komputera, a nie czas jego działania. Dwie liczby będą się różnić, jeśli użyjesz trybu uśpienia / hibernacji.
źródło
wmic
Menedżer zadań isysteminfo
wszystkie wydają się odliczać wstecz od bieżącego czasu o liczbę tyknięć komputera bieganie. Ale jeśli umieścisz swój komputer w tryb uśpienia (lub hibernacji) dużo, tak jak ja, rzeczywista łączna bieganie czas jest znacznie krótszy niż czas od ostatniego rozruchu (tylko trzydzieści dni w moim przypadku w ciągu ostatnich kilku miesięcy), zrzucając to obliczenie całkowicie.Jest
LastBootUpTime
właściwośćWin32_OperatingSystem
klasy. Możesz użyć WMIC za pomocą tego polecenia:Lub jeśli używasz Powershell, możesz przekonwertować czas na coś bardziej czytelnego niż ten irytujący format WMI datetime:
Zauważ, że w późniejszych wersjach programu PowerShell możesz także użyć Get-CimInstance, który automatycznie zwróci wartość jako datę / godzinę:
Jedyną irytującą rzeczą jest to, że Get-CimInstance czasami zmienia nazwę niektórych pól systemowych z obiektów WMI, takich jak __SERVER tutaj. Musisz użyć albo,
CSName
alboPSComputerName
wydaje mi się, że to działa.źródło
20121217175810.414696+120
Myślę, że potrzebuję cholernie dobrego kalkulatora do obliczenia czasuCIM_DATETIME
to format wymagany przez standard. WykorzystujeyyyymmddHHMMSS.mmmmmmsUUU
24 godziny. Tutaj ostatni czas ponownego uruchomienia to 17 grudnia 2012 o 17:58. msdn.microsoft.com/en-us/library/windows/desktop/…Dla użytkowników systemu Windows 10 tam ....
źródło
Należy pamiętać, że jak podkreślił Alex
/sleepstudy
komenda nie dodano aż Windows 8.1. Zamiast tego może działać / systempowerreport .Zauważ, że niektóre z tych odpowiedzi nigdy nie działały dla mnie, na przykład w przeszukiwaniu dziennika zdarzeń zawsze brakowało niektórych wpisów. Odpowiedź @ Florisza jest również poprawna w tym względzie. Oto moje rozwiązanie:
W administracyjnej powłoce cmd uruchom następujące polecenie:
Następnie otwórz plik
sleepstudy.html
w przeglądarce. Zostaniesz przywitany niesamowicie zorganizowanymi statystykami dotyczącymi zamykania / ponownego uruchamiania / czuwania / hibernacji z ostatnich trzech dni . (więc uruchamiaj okresowo, jeśli potrzebujesz)Przykład wyjścia: (AFAIR,
Showdown (Hybrid)
oznacza szybkie uruchomienie)Źródło / dokumentacja | Również powiązane
źródło
W systemie Windows 7 wolę
WMIC nie bierze pod uwagę czasu snu i zostawiam moją stację roboczą zamkniętą w pracy, śpiąc w ciągu tygodnia, gotową obudzić się następnego dnia.
źródło
jeszcze inny sposób w pliku wsadowym, aby uzyskać czas rozruchu za pomocą wmic, ale w postaci czytelnej dla człowieka:
wynik :
DTS: 20170308073729.491206 + 060
BOOTTIME: 08.03.2017, 07:37
źródło
set BOOTTIME
działa.Aby uzyskać go w PowerShell:
Oto wynik:
źródło
W prawie każdej wersji systemu Windows można sprawdzić znacznik czasu w pliku wymiany.
katalog /a:hc:\pagefile.sys
źródło
Z podobnego pytania ServerFault wyszukaj / przefiltruj dziennik zdarzeń systemu Windows pod kątem identyfikatora zdarzenia
6009
.W systemie Windows 10:
Event Viewer > Windows Logs > System
a następnieFilter Current Log...
akcja.źródło
Możesz do tego użyć PowerShell.
Zamknąć
Spowoduje to wyświetlenie listy zarejestrowanych czasów wyłączenia.
Alternatywne polecenie, lepiej zoptymalizowane do połączeń zdalnych:
Przykładowe dane wyjściowe:
Uruchomienie
Poniższe polecenie wyświetli listę zarejestrowanych czasów uruchamiania.
Alternatywne polecenie, lepiej zoptymalizowane do połączeń zdalnych:
Przykładowe dane wyjściowe:
Przetestowałem to na PowerShell 5.1 i Windows 10.0.15063. Ale powinien również działać w systemie Windows 7, o ile masz co najmniej PowerShell 3.0. Pamiętaj, że musisz uruchomić go jako administrator.
Pełna dokumentacja polecenia znajduje się tutaj: docs.microsoft.com
źródło
Kilka odpowiedzi wspomina
net statistics workstation
i zauważyłem, że oba:i
powinien podać dane dotyczące ostatniego rozruchu w
Statistics since ...
linii.Jednak niektóre wersje systemu operacyjnego (np. Svr2008 / 6.0) zwrócą
1/1/1980 12:00
datę podczas używaniaserver
. Więc domyślnieworkstation
.Możesz także skrócić niektóre polecenia
net stats workstation
i uzyskać takie same wyniki. Wreszcie, jeśli przeskakujesz z systemu do systemu, domyślne pole CMD nie jest wystarczająco duże, aby wyświetlić wszystkie wyniki polecenia. Więc potokuję dane wyjściowe, abymore
uniknąć przewijania w górę, aby zobaczyć czas uruchamiania. Dlatego moim domyślnym poleceniem jest:źródło
Chcę dodać, że wszystkie te polecenia naprawdę dają ci znaczniki czasu, gdy wykonywane jest „restart” lub „restart”. I to nie po zamknięciu i uruchomieniu. Po wyłączeniu i uruchomieniu „lastbootuptime” będzie odzwierciedlał czas, kiedy system jest naprawdę „restartowany”, a nie rzeczywisty czas uruchamiania. Tak więc zamknięcie / uruchomienie daje taki sam wynik jak powrót z zawieszenia / hibernacji dla znacznika czasu LastBootUpTime.
źródło
Taki sam jak Max odpowiedź ...
... ale w oneliner:
Ta implementacja WMI może wydawać się nieco niechlujna, ale jest bardzo szybka w porównaniu do innych implementacji PowerShell lub Systeminfo i możesz łatwo zmienić format, ponieważ jest to wyraźnie zaznaczone w kodzie.
Dziękuję Max.
źródło