2010-03-19 8 views
5

Tengo una PC conectada remotamente por red, pero ocasionalmente se cuelga o se reinicia por usuarios remotos. Después del reinicio, algunos servicios y aplicaciones deben estar en estado de ejecución. Así que me gustaría saber el reinicio lo antes posible. Creo que PS puede ser una buena opción con algunas secuencias de comandos para poder hacer una llamada remota y obtener la última información de la marca de tiempo de reinicio.Obtener Windows Times Reboot Timestamp?

¿Hay alguna manera de obtener una marca de tiempo del último reinicio remoto de Windows XP utilizando PowerShell 2.0 (su función de comunicación remota)?

Respuesta

1

El tiempo de actividad de la computadora en segundos está disponible en el contador de rendimiento "System Up Time". Aunque eso es probablemente excesivo.

Obviamente, para los servicios lo más fácil es simplemente establecer su modo de inicio en "Automático", pero si tiene otras cosas que necesitan ejecutarse, la forma más fácil de hacerlo es a través del programador de tareas de Windows: puede establecer un programa que se ejecuta cuando la computadora se inicia.

+0

Esto se cumple estableciendo tareas automáticas de servicio o programación. Sin embargo, el reinicio puede ser causado por problemas de red u otros problemas de hardware, y pueden causar que los servicios o la aplicación no se puedan ejecutar. Es por eso que necesito obtener la última marca de tiempo de reinicio y verificar sus cambios. –

+0

Todavía puede usar el contador de rendimiento como una "red de seguridad", supongo. Los contadores de rendimiento se pueden leer de forma remota. –

17

Usted puede hacer esto a través de WMI:

$wmi = Get-WmiObject -Class Win32_OperatingSystem -Computer "RemoteMachine" 
$wmi.ConvertToDateTime($wmi.LastBootUpTime) 
+0

¿Qué tal obtener la información desde una PC remota? ¿Debo especificar un nombre de computadora/ip con user/pwd? –

3

Para un equipo remoto:

$wmi = Get-WmiObject -Class Win32_OperatingSystem -Computer RemoteComputerName 
$wmi.ConvertToDateTime($wmi.LastBootUpTime) 
1

FYI, si usted está en el PowerShell Community Extensions 2.0 Beta, puede utilizar Get-tiempo de actividad por ejemplo:

PS> Get-Uptime 

Uptime        LastBootUpTime 
------        -------------- 
00:44:01.4401754      3/21/2010 12:07:17 AM