Question Comment puis-je savoir quand Windows a été redémarré pour la dernière fois?


Comment savoir si mon ordinateur sous Windows 7 a été redémarré pour la dernière fois?

Je préfère une solution qui ne nécessite pas de chercher dans le journal des événements, mais quelque chose comme wmic ou peut-être cmd commandes.


87
2017-12-24 14:24


origine




Réponses:


systeminfo la commande est presque ce dont vous avez besoin. Sur Windows 7 en anglais, vous pouvez également faire:

systeminfo | find /i "Boot Time"

Ou avec l'aide de WMIC:

wmic os get lastbootuptime

La principale différence entre Windows 7 et Windows XP est que, sous Windows 7, Microsoft ne peut afficher que le dernier temps de démarrage.


Aussi dans le Gestionnaire des tâches:

enter image description here


144
2017-12-24 14:32



En outre, y a-t-il une liste cumulative de la dernière réinitialisation?s ? - Royi Namir
@RoyiNamir: Avec quelques googler liste des redémarrages (très similaire): Get-EventLog -LogName System | where { ($_.InstanceId -bAnd 0xFFFF) -eq 6006 } - m0nhawk
c'est PowerShell .....? - Royi Namir
Vous pouvez également voir la liste dans l'observateur d'événements comme suit: howtogeek.com/72420/...  Je suis sûr que vous pouvez interroger cela avec les PowerShell Get-WinEvent mais je n'ai pas enquêté du tout. - Bacon Bits
Soit conscient que systeminfo est localisé. Alors "Boot Time" n'est vrai que pour les versions anglaises de Windows. - Markus Mitterauer


Une autre façon de faire est d'utiliser la ligne de commande suivante qui fonctionne à la fois dans Windows XP et Windows 7:

net statistics workstation

Il a l'avantage d'être plus rapide que le systeminfo alternative lors du formatage de la date (qui wmic ne fait pas). Vous obtenez également quelques autres informations qui peuvent être utiles si vous utilisez cette commande pour déboguer un ordinateur (puisque vous demandez spécifiquement cmd, Je suppose que vous ne le faites pas par programmation).

Vous pouvez trouver plus d'informations sur le net statistics commande ici: http://technet.microsoft.com/en-us/library/bb490714.aspx

Voici un exemple du résultat (en utilisant une copie française de Windows 7 Pro SP1 x64, le langage utilisateur importe peu pour la ligne de commande):

example

(le nom de l'ordinateur est volontairement flou)


Plus de détails sur http://en.wikipedia.org/wiki/Uptime sur la précision lors de la détermination de la disponibilité du système.


Note importante: cette méthode détermine le dernier démarrage de l'ordinateur et non sa disponibilité. Les 2 chiffres seront différents si vous utilisez le mode veille / veille prolongée.


18
2017-12-09 15:34



aucune idée de pourquoi cela ne se lit pas comme si vous utilisiez systeminfo ou wmic ... c'est probablement négligeable, mais il diffère de plus de 2 minutes sur mon système - Anthony Shaw
Il diffère également pour 40 secondes sur mon ordinateur. Je n'ai aucune idée de la raison pour laquelle ce n'est pas exactement la même chose, je suppose que le service ne fait que commencer un peu. Des infos intéressantes sur en.wikipedia.org/wiki/Uptime - dnLL
Cela diffère de plus de neuf mois sur le mien :-) C'est la seule réponse correcte. Il donne l’horodatage réel du dernier démarrage (ou quel que soit le service associé démarré après l’amorçage, donc très proche), alors que wmic, Gestionnaire de tâches et systeminfo tous semblent compter à rebours de l'heure actuelle par le nombre de tiques que le PC a été exécuté. Mais si vous mettez votre ordinateur en veille (ou en veille prolongée), comme je le fais, le total réel fonctionnement le temps est beaucoup moins long que le temps écoulé depuis le dernier démarrage (seulement trente jours dans mon cas au cours des derniers mois), ce qui a complètement éliminé ce calcul. - Cameron
Merci @ cameron, j'ai ajouté une note à la fin de ma réponse. La question initiale était vraiment de savoir quand l'ordinateur a démarré et non sa disponibilité, c'est donc un détail important. Wikipedia mentionne quelque peu la différence dans l'article de disponibilité que j'ai lié. - dnLL
Ce n'est pas vraiment la dernière heure de "démarrage" - c'est l'heure à laquelle le service Serveur ou Poste de travail a démarré, en fonction de celui pour lequel vous interrogez les statistiques. Comme ceux-ci ne s'arrêtent jamais lors d'une session Windows normale, il s'agit d'une approximation pratique du dernier démarrage. - oldmud0


Il y a le LastBootUpTime propriété du Win32_OperatingSystem classe. Vous pouvez utiliser WMIC avec cette commande:

wmic os get lastbootuptime

Ou si vous utilisez Powershell, vous pouvez convertir l'heure en quelque chose de plus lisible que ce format de datetime WMI ennuyeux:

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

Notez que dans les versions ultérieures de PowerShell, vous pouvez également utiliser Get-CimInstance, qui retournera automatiquement la valeur en tant que date-heure:

Get-CimInstance -Class Win32_OperatingSystem | Select-Object LastBootUpTime

La seule chose irritante est que Get-CimInstance changera parfois le nom de certains champs système à partir d'objets WMI, tels que __SERVER ici. Vous devez utiliser soit CSName ou PSComputerName, qui semble fonctionner pour moi.


17
2017-12-24 14:41



20121217175810.414696+120 Je pense que j'ai besoin d'une bonne calculatrice pour calculer le temps - Royi Namir
@Royi Ouais, les horodatages WMI sont stupides. C'est un CIM_DATETIME, qui est le format requis par la norme. Ses yyyymmddHHMMSS.mmmmmmsUUU, en utilisant 24 heures de temps. Ici, votre dernier temps de redémarrage est le 17 décembre 2012 à 17h58. msdn.microsoft.com/en-us/library/windows/desktop/ - Bacon Bits
L'utilisation pratique de la méthode get-wmiobject permet de gagner du temps lors du démarrage des ordinateurs distants. Ajoutez simplement "-computer <nom_ordinateur>" à la commande (avant le tube) - camster342


Pour les utilisateurs de Windows 10 sur le marché ....

System Properties Windows 10 - Performance Up time


5
2018-03-28 13:19



Cela vous montre la disponibilité (c.-à-d. combien de temps le système est en cours d'exécution) pas le moment où le système a été démarré comme demandé par OP. - Dawid Ferenczy
C'est vrai, mais cela reste utile. - tbc0


Sur Windows 7 je préfère

net statistics workstation

WMIC ne prend pas en compte le temps de sommeil et je laisse mon poste de travail enfermé au travail en train de dormir pendant la semaine, prêt à me réveiller le lendemain.


2
2017-07-08 20:41





encore une autre façon dans un fichier de commandes pour obtenir le temps de démarrage avec Wmic mais sous une forme lisible par l'homme:

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%

sortie:

DTS: 20170308073729.491206 + 060

BOOTTIME: 2017-03-08 07:37


2
2018-05-24 20:46



Cette réponse serait préférable si elle comprenait une explication de la façon dont set BOOTTIME travaux. - Michael Kjörling


Sur à peu près toutes les versions de Windows, vous pouvez vérifier l'horodatage sur le fichier d'échange.

dir / a: h c: \ pagefile.sys


1
2017-07-25 15:12



Je ne le pense pas. Au moins sur Windows 10, lorsque j'ai vérifié, l'heure du fichier d'échange était plus récente que l'heure de démarrage. - tbc0


A partir d'une question ServerFault similaire, recherche / filtre le journal des événements du système Windows pour l'ID d'événement 6009.

Sur Windows 10: Event Viewer > Windows Logs > System et puis le Filter Current Log... Action.


1
2017-07-17 18:08