Quel est le moyen le plus simple de savoir combien de temps un ordinateur est sous Windows?
Trouver "heure de démarrage du système"
Jours: 10 heures: 10 minutes: 10 secondes: 10
Pour un résultat plus court, vous pouvez utiliser:
systeminfo | find "Boot Time"
il existe un excellent outil de ligne de commande de Microsoft uptime.exe :
la bonne chose avec cet outil est que cela fonctionne très vite.
Temps de disponibilité [serveur] [/ s] [/ a] [/ j: mm/jj/aaaa |/p: n] [/ battement de coeur] [/? | /Aidez-moi]
nom du serveur ou adresse IP du serveur distant à traiter.
/s Affiche les événements et statistiques système clés.
/a Affiche les événements d'échec de l'application (suppose/s).
/d: calcule uniquement pour les événements après mm/jj/aaaa.
/p: calcule uniquement pour les événements des n jours précédents.
/Heartbeat Activer/désactiver le rythme cardiaque du système
/? Utilisation de base.
/help Informations d'utilisation supplémentaires.
Ouvrez l'invite de commande et tapez:
net stats srv | find "Statistics"
Exemple de sortie:
>net stats srv | find "Statistics"
Server Statistics for \\4IFS-SANDER
Statistics since 22/07/2009 10:14:14
Source ( MS KB ).
Edit : En fait, cela vous indiquera la date et l’heure de mise en marche du PC, pas la durée.
Sous Windows 7/Windows Server 2008 et versions ultérieures, ces informations sont affichées dans le gestionnaire de tâches sous "Onglet Performances".
Cela peut être plus rapide qu'en utilisant la ligne de commande et fonctionne dans les cas où vous pourriez avoir des problèmes WMI vous empêchant d'exécuter systeminfo.
Si vous avez besoin de le trouver à distance, vous pouvez également exécuter
systeminfo/s SERVERNAME | trouver le temps:"
à partir de la ligne de commande.
La commande suivante donne l'heure du dernier redémarrage d'un système distant:
systeminfo /s server_name | find "System Boot Time"
Parfois, l’autre commande uptime affiche une heure incorrecte, c’est pourquoi j’utilise cette commande pour afficher le LOGON TIME
query USER
ou plus court même:
quser
qui imprime quelque chose comme:
C:\Users\eflorinescu>query USER
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
>eflorinescu console 2 Active 2+23:44 5/7/2018 8:25 AM
Si vous avez les kits de ressources Windows Server 2000 ou 2003, essayez
srvinfo -ns [\\\server] | Findstr "Time"
Remarque: Srvinfo.exe ne fonctionnera pas sur les versions 64 bits de Windows, car il s'agit de la version 16 bits.
Utilisation de SYSTEMINFO avec PowerShell
Pour ceux qui aiment utiliser PowerShell, vous pouvez utiliser la (les) réponse (s) ci-dessus et insérer systeminfo
dans une fonction PowerShell pour obtenir un résultat DateTime
lors de la dernière utilisation du serveur booted :
function Get-ComputerBootTime {
param($ComputerName = (hostname))
$SystemInfo = & systeminfo /s $ComputerName | Select-String "System Boot Time")
if($SystemInfo -match "[\d/]+,\s+\S+"){
return (Get-Date $matches[0])
}
}
Et appelez ensuite la fonction, par exemple:
[PS]> $BootTime = Get-ComputerUptime -ComputerName MYSERVER
Pour obtenir le Uptime du serveur, vous comparez avec l'heure actuelle:
[PS]> $UpTime = (Get-Date) - $BootTime
Ceci est une TimeSpan
, qui inclut des propriétés telles que TotalDays
:
[PS]> $UpTime.TotalDays
14.1827364