Windows 7'de başlatma ve kapatma sürelerini nasıl kaydedebilirim?


18

Bilgisayarımın başlatıldığı ve kapatıldığı zamanları günlüğe kaydetmek istiyorum. Herhangi bir teşhis bilgi ya da bir şey, sadece tarih ve saat basit bir not, örneğin gibi bir şey gerekmez:

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

Bunu nasıl yapabilirim?

Google aramalarım şu ana kadar pek çok kişinin Windows başlangıç ​​zamanlarını azaltmalarını istedi, ancak mevcut görevle ilgilenmiyor.

Yanıtlar:


26

Windows, bu tür şeyleri günlüğe kaydetmek için Olay Görüntüleyicisi'yle birlikte olay günlüklerini kullanır:

Olay Kimliği # 6005 , sistemin başlatıldığını gösterir

Olay Kimliği # 6006 , sistemin kapatıldığını gösterir

Olay Görüntüleyicisi'nde, bu iki olay kimliğini kaynak olay günlüğü olacak şekilde filtreleyecek özel bir görünüm oluşturmalısınız .

Bu en basit yol.

Alternatif olarak, özel bir filtre oluşturmak ve bu öğeleri bir metin dosyasına bağlamak için PowerShell'in Get-WinEvent cmdlet'ini kullanabilirsiniz.

Veya ... özel bir olay günlüğünü (özel görünümlerle oluşturduğunuz ...) bir metin dosyasına aktarmak için Get-EventLog'u kullanabilirsiniz.


Sistem girişi \ uyku sürelerini bilmenin bir yolu var mı?
Viktor Sehr

Bu sayfaları okuduktan sonra bile bu görünümlerin nasıl oluşturulacağına dair bir fikrim yok. Ancak, daha kolay bir yol var. Açın Event Viewer, Windows Logs-> öğesini tıklayın System. Orada sağ tarafta Filter Current Log..., üzerine tıklayın ve yeni pencere ekleme göründüğünde 6006üzerine All Event ID'stıklayarak Ok. Bu yalnızca sistem kapatma olaylarını gösterecektir. Sistem başlatma için de aynısını yapın.
machineaddict

yararlı şeyler ...
Fernando Espinosa

1

6005 günlük olaylarının başlangıcını gösteriyor, ancak herhangi bir yeniden başlatma durumunda da görüneceğini varsayıyorum, yani Windows 'tam başlatma' veya sıcak yeniden başlatma arasında bir fark yaratmıyor.

Eğer amaç sadece ilk açılış ve son kapanışı aramaksa, herhangi bir çift 6005 girişi kaldırmak zorundadır.

Benimle, olay kimliği 12 ilk ve olay kimliği 13 sonuncusudur.

12: Kaynak (Microsoft-Windows-Çekirdek-Genel) Olay Kimliği (12) için açıklama bulunamadı. Bu olayı başlatan bileşen bilgisayarda yüklü değil veya yükleme bozulmuş. Bileşeni yükleyebilir veya onarabilir veya Description Server'ı değiştirmeyi deneyebilirsiniz.

13: Kaynak'taki Olay Kimliği (13) açıklaması (Microsoft-Windows-Kernel-General) bulunamadı. Bu olayı başlatan bileşen bilgisayarda yüklü değil veya yükleme bozulmuş. Bileşeni yükleyebilir veya onarabilir veya Description Server'ı değiştirmeyi deneyebilirsiniz.

Etkinlikle birlikte şu bilgiler eklendi (ekleme dizeleri): 2012-12-25T18: 23: 26.070181000Z

Not: Bu bir yana, birkaç 6005'in günlüğe kaydedildiği birkaç örnek var, ancak bunu takip eden 6006 yok. Örneğin, o günkü son olay günlüğü girişine dayalı olarak gerçek oturumu manuel olarak eklemeniz gerekir.


1

PowerShell'in Get-EventLog'unu kullanarak aşağıdaki (uzun) tek satır, istenen çıktıyı bir metin dosyasına gönderir:

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

notlar

  • C:\temp2Bunun çalışması için dizin mevcut olmalıdır. Eğer yoksa, oluşturun veya tek-astarı başka (mevcut) bir dizin kullanacak şekilde değiştirin.
  • Çıkışı ISO 8601 formatında almak için " TimeGenerated.ToString()" yerine " TimeGenerated.ToString("s")" yazın.
  • Tek astarda yerleşik bir zaman filtresi vardır (sadece 2017-05-01'den sonraki başlatma ve kapatma işlemleri dahil). Daha eski başlatma ve kapatma işlemleri gerekiyorsa "2017-05-01" i başka bir şeyle değiştirin.
  • Çıktı ters kronolojik sırada gerekiyorsa " Sort-Object" yerine " Sort-Object -Descending" yazın.
  • Get-EventLog kullandığından, Windows'un eski sürümlerinde de çalışır.

Talimat

Tek satır bir komut dosyasına yerleştirilebilir, ancak daha önce izinlerin çalışması için dikkat edilmesi gerekir. Bunun yerine, en kolay yol:

  1. Bir Windows komut istemi açın: Window+ R, yazın CMDve tuşuna basın Enter.
  2. Yazın powershellve tuşuna basın Enter. (Windows 10'da, PowerShell doğrudan Window+ Xve "Windows PowerShell" seçilerek açılabilir )
  3. Tek astarı panoya kopyalayın.
  4. Tek poşetine yapıştırın: Alt+ SpaceDüzenleYapıştır (Windows'un yeni sürümlerinde normal Ctrl+ Vaslında hem CMD ve PowerShell pencerelerde çalışır (her ikisi de şimdi conhost.exe altında çalışacak)).
  5. Basın Enter
  6. Tamamlanana kadar bekleyin (özellikle Windows'un eski bir yüklemesi ise oldukça uzun sürebilir).
  7. Sonuç dosyada bulunabilir C:\temp2\_ComputerStartsAndStops.log.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.