Come ottenere il tempo di attività del sistema in Windows? [chiuso]


308

Sto usando Windows 7 e XP. Voglio sapere il tempo di attività del sistema.

Qual è il comando / procedura per ottenere il tempo di attività?


5
Err, stai cercando un comando nel prompt dei comandi? In tal caso, provare net statistics servernel prompt dei comandi.
s0d4pop,

13
Domanda da pubblicare in superutente
000,

1
Il modo in cui recuperare informazioni sullo stato del sistema dalla riga di comando è chiaramente correlato alla programmazione.
Giovanni

A questa domanda viene risposto ServerFault: serverfault.com/questions/159612/…

vedi anche superuser.com/a/909172/33303 se sei interessato anche allo standby / ibernazione
Janus Troelsen,

Risposte:


685

Di seguito sono riportati otto modi per trovare l' Uptime nel sistema operativo Windows.

1: utilizzando Task Manager

In Windows Vista e Windows Server 2008, Task Manager è stato potenziato per mostrare ulteriori informazioni sul sistema. Una di queste informazioni è il tempo di esecuzione del server.

  1. Fare clic con il tasto destro sulla barra delle applicazioni e fare clic su Task Manager. Puoi anche fare clic su CTRL+ SHIFT+ ESCper accedere a Task Manager.
  2. In Task Manager, selezionare la scheda Prestazioni.
  3. Il tempo di attività attuale del sistema è mostrato in Sistema o Prestazioni ⇒ CPU per Win 8/10.

    Campo "Tempo di attività" in Task Manager

2: utilizzando l'utilità delle informazioni di sistema

L' systeminfoutilità della riga di comando controlla e visualizza varie statistiche di sistema come data di installazione, hotfix installati e altro. Apri un prompt dei comandi e digita il seguente comando:

systeminfo

Puoi anche restringere i risultati fino alla linea che ti serve:

systeminfo | find "System Boot Time:"

inserisci qui la descrizione dell'immagine

3: utilizzando l'Uptime Utility

Microsoft ha pubblicato uno strumento chiamato Uptime.exe. È un semplice strumento da riga di comando che analizza le informazioni sull'affidabilità e la disponibilità del computer. Può funzionare localmente o in remoto. Nella sua forma semplice, lo strumento mostrerà il tempo di attività corrente del sistema. Un'opzione avanzata consente di accedere a informazioni più dettagliate come arresto, riavvii, arresti anomali del sistema operativo e installazione del Service Pack.

Leggi i seguenti KB per maggiori informazioni e per i link per il download:

Per usarlo, attenersi alla seguente procedura:

  1. Scarica uptime.exe dal link sopra e salvalo in una cartella, preferibilmente in uno che si trova nel percorso del sistema (come SYSTEM32).
  2. Aprire una finestra del prompt dei comandi con privilegi elevati. Per aprire un prompt dei comandi con privilegi elevati, fare clic su Start, Tutti i programmi, Accessori, pulsante destro del mouse su Prompt dei comandi, quindi fare clic su Esegui come amministratore. Puoi anche digitare CMD nella casella di ricerca del menu Start e quando vedi l'icona del prompt dei comandi fai clic su di essa per selezionarla, tieni premuto CTRL+ SHIFTe premi ENTER.
  3. Passare al punto in cui è stata posizionata l'utilità uptime.exe.
  4. Esegui l' uptime.exeutilità. È possibile aggiungere un /? al comando per ottenere più opzioni. inserisci qui la descrizione dell'immagine

Non offre molti parametri della riga di comando:

C:\uptimefromcodeplex\> uptime /?
usage: Uptime [-V]
    -V   display version

C:\uptimefromcodeplex\> uptime -V
version 1.1.0

3.1: utilizzando la vecchia utility Uptime

Esiste una versione precedente dell'utilità "uptime.exe". Questo ha il vantaggio di NON aver bisogno di .NET. (Ha anche molte più funzioni oltre al semplice uptime.)

Link per il download: Strumento di uptime del server Windows NT 4.0 (uptime.exe) (final x86)

C:\uptimev100download>uptime.exe /?

UPTIME, Version 1.00
(C) Copyright 1999, Microsoft Corporation

Uptime [server] [/s ] [/a] [/d:mm/dd/yyyy | /p:n] [/heartbeat] [/? | /help]
        server          Name or IP address of remote server to process.
        /s              Display key system events and statistics.
        /a              Display application failure events (assumes /s).
        /d:             Only calculate for events after mm/dd/yyyy.
        /p:             Only calculate for events in the previous n days.
        /heartbeat      Turn on/off the system's heartbeat
        /?              Basic usage.
        /help           Additional usage information.

4: utilizzando l'utilità NET STATISTICS

Un altro metodo semplice, se puoi ricordarlo, è usare le informazioni approssimative trovate nelle statistiche visualizzate dal comando NET STATISTICS. Apri un prompt dei comandi e digita il seguente comando:

net statistics workstation

Le statistiche dovrebbero dirti da quanto tempo è in esecuzione, sebbene in alcuni casi queste informazioni non siano accurate come altri metodi.

inserisci qui la descrizione dell'immagine

5: utilizzando il Visualizzatore eventi

Probabilmente il più preciso di tutti, ma richiede alcuni clic. Non visualizza un conteggio esatto di giorno o ora dall'ultimo riavvio, ma mostrerà informazioni importanti sul motivo per cui il computer è stato riavviato e quando lo ha fatto. Dobbiamo guardare l'ID evento 6005, che è un evento che ci dice che il computer ha appena terminato l'avvio, ma dovresti essere consapevole del fatto che ci sono praticamente centinaia se non migliaia di altri tipi di eventi da cui potresti potenzialmente imparare .

Nota: A proposito, l'ID evento 6006 è ciò che ci dice quando il server è inattivo, quindi se c'è molta differenza di tempo tra gli eventi 6006 e 6005, il server è rimasto inattivo per molto tempo.

Nota: è anche possibile aprire il Visualizzatore eventi digitando eventvwr.msc nel comando Esegui e si potrebbe anche utilizzare il collegamento trovato nella cartella Strumenti di amministrazione.

  1. Fai clic su Visualizzatore eventi (locale) nel riquadro di navigazione sinistro.
  2. Nel riquadro centrale, fai clic sul tipo di evento Informazioni e scorri verso il basso fino a visualizzare l'ID evento 6005. Fai doppio clic sull'ID evento 6005 o fai clic con il pulsante destro del mouse e seleziona Visualizza tutte le istanze di questo evento.
  3. Verrà visualizzato un elenco di tutte le istanze dell'ID evento 6005. È possibile esaminare questo elenco, esaminare le date e gli orari di ciascun evento di riavvio e così via.
  4. Aprire lo strumento Server Manager facendo clic con il pulsante destro del mouse sull'icona Computer nel menu Start (o sul desktop se è stato abilitato) e selezionare Gestisci. Passa al Visualizzatore eventi.

inserisci qui la descrizione dell'immagine

5.1: Eventlog tramite PowerShell

Get-WinEvent -ProviderName eventlog | Where-Object {$_.Id -eq 6005 -or $_.Id -eq 6006}

6: a livello di codice , utilizzando GetTickCount64

GetTickCount64 recupera il numero di millisecondi trascorsi dall'avvio del sistema.

7: utilizzando WMI

wmic os get lastbootuptime

8: Il nuovo uptime.exe per Windows XP e versioni successive

Come lo strumento di Microsoft, ma compatibile con tutti i sistemi operativi fino a Windows 10 e Windows Server 2016 inclusi, questa utility di uptime non richiede un prompt dei comandi elevato e offre un'opzione per mostrare l'uptime in entrambi DD: HH: MM: SS e in formati leggibili dall'uomo (se eseguito con il -hparametro della riga di comando).

Inoltre, questa versione di uptime.exeverrà eseguita e mostrerà il tempo di attività del sistema anche quando viene avviato normalmente da una sessione explorer.exe (ovvero non tramite la riga di comando) e viene messo in pausa per leggere il tempo di attività:

inserisci qui la descrizione dell'immagine

e quando eseguito come uptime -h:

inserisci qui la descrizione dell'immagine


2
6. WMI: wmic os get lastbootuptime
ded

3
Nota per Win XP / 2003 : 1. non utilizzabile (non visualizzato in Task manager) 2. potrebbe non includere il tempo di avvio (non comunque sul mio PC), ma il tempo di attività esplicito - contrariamente all'output systeminfo di Windows successivo. Si noti che l'output di Systeminfo è localizzato, quindi su una Windows non inglese è necessario sostituire il "Tempo di avvio del sistema" di conseguenza o semplicemente eseguire systeminfoe controllare l'intero output
FelixD

48
Ora QUESTA è quella che chiamo una risposta COMPLETA! :-)
Andrew Steitz,

2
Si noti che il tempo di attività riportato da "1: utilizzando Task Manager" può differire dal tempo di avvio, poiché non include il tempo trascorso in stato di ibernazione. Ad esempio, il mio PC è stato avviato due giorni fa e riporta solo 8:20 di uptime.
user1708042

3
L'opzione 1 sembra essere andata di nuovo in Task Manager di Windows 8 .
BlaM,

15

Uso questo piccolo frammento di PowerShell:

function Get-SystemUptime {
    $operatingSystem = Get-WmiObject Win32_OperatingSystem
    "$((Get-Date) - ([Management.ManagementDateTimeConverter]::ToDateTime($operatingSystem.LastBootUpTime)))"
}

che quindi produce qualcosa di simile al seguente:

PS> Get-SystemUptime
6.20:40:40.2625526

Come chiamare questo PowerShell da Python su Windows?
Ciasto piekarz,


7

Due modi per farlo ...

Opzione 1:

1.  Go to "Start" -> "Run".

2.  Write "CMD" and press on "Enter" key.

3.  Write the command "net statistics server" and press on "Enter" key.

4.  The line that start with "Statistics since …" provides the time that the server was up from.


  The command "net stats srv" can be use instead.

Opzione 2:

Lo strumento Uptime.exe consente di stimare la disponibilità del server con Windows NT 4.0 SP4 o versione successiva

http://support.microsoft.com/kb/232243

Spero che ti abbia aiutato !!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.