Wie protokolliere ich Start-und Herunterfahrzeiten in Windows 7?

Ich möchte die Zeiten protokollieren, zu denen mein Computer gestartet und heruntergefahren wird. Ich brauche keine Diagnoseinformationen oder irgendetwas, nur eine einfache Notiz von Datum und Uhrzeit, zB so etwas wie:

2011/04/29 08:17:34 AM Startup
2011/04/29 05:26:52 PM Shutdown

Wie kann ich das tun?

Meine Google-Suchanfragen haben bisher viele Leute dazu gebracht, die Windows-Startzeiten zu verkürzen, aber nichts von Interesse für die vorliegende Aufgabe.

Author: Will Martin, 2011-04-30

4 answers

Windows verwendet Ereignisprotokolle mit Ereignisanzeige, um diese Art von Dingen zu protokollieren:

Ereignis-ID # 6005 zeigt den Systemstart an

Ereignis-ID # 6006 zeigt das Herunterfahren des Systems an

Sie sollten eine benutzerdefinierte Ansicht in der Ereignisanzeige erstellen, die diese beiden Ereignis-IDs filtert, wobei die Quelle das Ereignislog ist.

Dies ist der einfachste Weg.

Alternativ können Sie das Cmdlet Get-WinEvent von PowerShell verwenden, um einen benutzerdefinierten Filter und eine benutzerdefinierte Pipe zu erstellen diese Elemente in eine Textdatei.

, Oder... sie können das Get-EventLog verwenden, um ein benutzerdefiniertes Ereignisprotokoll zu leiten (das Sie mit den benutzerdefinierten Ansichten erstellen...) in eine Textdatei.

 26
Author: yeedl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-28 09:00:26

6005 zeigt den Start der Protokollierungsereignisse an, aber ich gehe davon aus, dass es auch bei Neustarts angezeigt wird, dh Windows macht keinen Unterschied zwischen einem "vollständigen Start" oder einem Warmstart.

Wenn der Zweck darin besteht, nur den ersten Start und den letzten Closedown zu suchen, müssen doppelte 6005 Einträge entfernt werden.

Bei mir ist die Ereignis-ID 12 die allererste und die Ereignis-ID 13 die letzte.

12: Die Beschreibung für die Ereignis-ID (12 ) in der Quelle ( Microsoft-Windows-Kernel-General ) konnte nicht gefunden werden. Entweder die komponente, die dieses Ereignis auslöst, ist nicht auf dem Computer installiert oder die installation ist beschädigt.Sie können die Komponente installieren oder reparieren oder versuchen Sie, den Server zu ändern.

13: Die Beschreibung für die Ereignis-ID (13 ) in der Quelle ( Microsoft-Windows-Kernel-General ) konnte nicht gefunden werden. Entweder die komponente, die dieses Ereignis auslöst, ist nicht auf dem Computer installiert oder die installation ist beschädigt.Sie können installieren oder reparieren Sie die Komponente oder versuchen Sie, den Server zu ändern.

Die folgenden Informationen wurden in das Ereignis aufgenommen (insertion strings): 2012-12-25T18:23:26.070181000 Z -

PS: Abgesehen davon habe ich eine Reihe von Fällen, in denen einige 6005 protokolliert wurden, aber keine 6006, die folgt. Man muss das tatsächliche Abmelden manuell hinzufügen, basierend auf zB dem letzten Eventlog-Eintrag an diesem Tag.

 1
Author: Mike994,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-28 09:02:28

Mit Powershells Get-EventLog gibt der folgende (lange) Einzeiler die angeforderte Ausgabe in eine Textdatei aus:

Get-EventLog -LogName System | Where-Object {(($_.EventID -eq 6005) -or ($_.EventID -eq 6006)) -and ($_.TimeGenerated -gt [DateTime] "2017-05-01")} | Select-Object EventID, TimeGenerated, Message | Sort-Object -Property TimeGenerated | Foreach { if ($_.EventID -eq 6005) { $out = "Startup"  } else { $out = "Shutdown" + "`r`n"}  ($_.TimeGenerated.ToString() + '  ' + $out); } > C:\temp2\_ComputerStartsAndStops.log

Anmerkungen

  • Das Verzeichnis C:\temp2 muss vorhanden sein, damit dies funktioniert. Wenn es nicht existiert, erstellen Sie es oder ändern Sie den Einzeiler, um ein anderes (vorhandenes) Verzeichnis zu verwenden.
  • Um die Ausgabe im Format ISO 8601 zu erhalten, ersetzen Sie "TimeGenerated.ToString() "durch"TimeGenerated.ToString("s")".
  • Es gibt einen eingebauten Zeitfilter im Einzeiler (nur mit Start und Herunterfahren nach 2017-05-01). Ändern Sie "2017-05-01" in etwas anderes, wenn älterer Start und Herunterfahren erforderlich sind.
  • Wenn die Ausgabe in umgekehrter chronologischer Reihenfolge erforderlich ist, ersetzen Sie "Sort-Object "durch"Sort-Object -Descending".
  • Da Get-EventLog verwendet wird, funktioniert es auch auf älteren Windows-Versionen.

Anweisung

Der Einzeiler kann in ein Skript eingefügt werden, aber dann müssen Berechtigungen beachtet werden, bevor er funktioniert. Stattdessen ist der einfachste Weg:

  1. Öffnen Sie ein Windows - Eingabeaufforderung: Fenster + R, geben Sie CMD ein und drücken Sie Enter.
  2. Geben Sie powershell ein und drücken Sie Enter. (Unter Windows 10 kann PowerShell direkt über das Fenster geöffnet werden + X und wählen Sie "Windows PowerShell")
  3. Kopieren Sie den Einzeiler in die Zwischenablage.
  4. Einfügen in den Einzeiler: Alt + RaumBearbeitenFügen Sie ein (bei neueren Windows-Versionen ist die normale Strg + V tatsächlich funktioniert sowohl in CMD-als auch in PowerShell-Fenstern (beide werden jetzt unter conhost ausgeführt.exe)).
  5. Drücken Sie Enter
  6. Warten Sie, bis es fertig ist (es kann ziemlich lange dauern, besonders wenn es sich um eine alte Windows-Installation handelt).
  7. Das Ergebnis finden Sie in der Datei C:\temp2\_ComputerStartsAndStops.log.
 1
Author: Peter Mortensen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-12-01 12:53:10

Vielleicht hilft Ihnen dies, wenn Sie die Zeit nicht für eine bestimmte Verwendung verwenden. TurnedOnTimesView: Überwachen Sie die Start-und Herunterfahrzeiten von Windows

 0
Author: Fatty Mieo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-05-10 04:12:28