Wie kann ich die Systembetriebszeit in Millisekunden in der Befehlszeile erhalten?

1889
ayyob khademi

Wie kann ich die Systembetriebszeit in Millisekunden über die Windows-Befehlszeile erhalten? Ich möchte so etwas wie das Ergebnis dieser Funktion: gettickcount()z 24233241231.

Gibt es dafür einen Befehl, ein Hilfsprogramm oder einen Trick?

2
Für welches Betriebssystem ist das gedacht? Dave vor 11 Jahren 9
@ MarcksThomas Ich sehe das Problem hier nicht, es ist nichts falsch daran, Anforderungen nachträglich hinzuzufügen, da es das OP ist ... BloodPhilia vor 11 Jahren 1
Es ist nicht Aufgabe anderer Benutzer, die Art der Frage so radikal zu ändern, dass sie das Problem des OP nicht mehr widerspiegelt. Welche weiteren Benutzer haben begonnen, Linux-Lösungen zu veröffentlichen? Das würde der OP überhaupt nicht helfen. BloodPhilia vor 11 Jahren 1
@ H.-DirkSchmitt Außer dass dies kein Restaurant ist, ist es ein Ort, an dem die Leute um Hilfe kommen. Wenn Sie nur wegen des guten Rufs dabei sind, habe ich das Gefühl, dass Sie aus allen falschen Gründen dabei sind. Ich habe Ihre Antwort nicht als gelöscht markiert. Und obwohl es wahr ist, dass ein Benutzer ohne OP die Frage bearbeitet hat, hat er dies getan, um die Wünsche und Anforderungen des OP zu berücksichtigen. Wenn Sie darüber debattieren möchten, können Sie sich gerne mit mir unterhalten. BloodPhilia vor 11 Jahren 0
@ H.-DirkSchmitt: Ich habe eine Frage zu [Meta] (http://meta.superuser.com/questions/6489/should-we-add-information-from-comments-nach-questions-if-it) geöffnet -invalidates-exists) für diese Diskussion. Marcks Thomas vor 11 Jahren 0
@ H.-DirkSchmitt: Ehrlich gesagt denke ich, dass die Antwort zumindest bis zu einem Konsens über Meta von Nutzen ist. Marcks Thomas vor 11 Jahren 1
@ayyobkhademi: AFAIK unter Windows Es ist nicht einfach, den Uptime-Wert in ms von der Befehlszeile zu erhalten. Ich glaube am nächsten, Sie können ein PowerShell-Skript aufrufen, das GetTickCount () oder noch besser GetTickCount64 () (nur Vista +) von Kernel32.dll aufruft Karan vor 11 Jahren 0

2 Antworten auf die Frage

5

Sie sind sich sicher, dass Sie die Millisekunden über das Befehlszeilenprogramm erhalten möchten. IMHO der Overhead-Start eines neuen Prozesses zum Abrufen dies dauert ein wenig zu lange.

Wenn auch Sekunden zu Ihren Anforderungen passen, finden Sie hier eine kleine Übersicht mit etwas Bash-Code.
Die weitere Annahme ist, dass Sie eine Art Unix haben. Dieses Beispiel funktioniert auf einem aktuellen Linux-System.

# Reading the time of boot bootTime=$(awk '/^btime/' </proc/stat) currentTime=$(date +%s) liveTime=$(( $ - $ )) echo "online since: $" 
Was ist mit Windows? ayyob khademi vor 11 Jahren 0
@ayyobkhademi: Das Parsen dieser Zeile ist ein großer Schmerz von der Windows-Befehlszeile, aber Sie könnten dies als Quelle verwenden: `systeminfo / FO list | findstr / C: "Systemstartzeit:" `. Marcks Thomas vor 11 Jahren 1
1
A. 'Eradicator' Polyakov

Führen Sie für Windows den folgenden Text in der Befehlszeile aus: net stats srv

https://support.microsoft.com/kb/555737