688782

Exakte Stoppuhr auf der CMD-Kommandozeile

Sie haben Ihren Rechner getunt und möchten herausfinden, ob sich eine bestimmte Aufgabe nun schneller erledigen lässt. Oder Sie wüssten gern, welcher von zwei Rechnern einen Job schneller abschließt. In einem solchen Fall wäre eine Stoppuhr-Funktion praktisch. Sie haben aber keine Lust, sich dafür ein Tool anzuschaffen. Mit ein paar Zeilen Batchcode und aktivierten Befehlserweiterungen (Standard) lässt sich auch auf dem Prompt CMD.EXE von Windows 2000/XP ein genauer Timer verwirklichen. Wir zeigen Ihnen, wie es funktioniert.

Anforderung:

Fortgeschrittener

Zeitaufwand:

Mittel

Problem:

Sie haben Ihren Rechner getunt und möchten herausfinden, ob sich eine bestimmte Aufgabe nun schneller erledigen lässt. Oder Sie wüssten gern, welcher von zwei Rechnern einen Job schneller abschließt. In einem solchen Fall wäre eine Stoppuhr-Funktion praktisch. Sie haben aber keine Lust, sich dafür ein Tool anzuschaffen.

Lösung:

Mit ein paar Zeilen Batchcode und aktivierten Befehlserweiterungen (Standard) lässt sich auch auf dem Prompt CMD.EXE von Windows 2000/XP ein genauer Timer verwirklichen. Ein Beispiel finden Sie mit der :pcwTimer.BAT . Diese liest vor und nach der gewünschten Aktion die %TIME%-Variable aus und errechnet dann die Dauer in Sekunden auf Hundertstel genau.

Für technisch Interessierte: Anhand dieser Batch demonstrieren wir eine Lösung für die Zerlegung der Zeit-Variablen in Stunden, Minuten und Sekunden. Auf diesem Weg wird ein Wert ausgegeben, der sich anschließend weiterverarbeiten lässt. Nur Fortgeschrittene sind damit vertraut, dass die Batchsprache ähnlich wie eine Programmiersprache eine solche String-Zerlegung leisten kann:

set X=foobar
echo %X:~0,3%

ECHO würde hier die ersten drei Zeichen der Variable ausgeben, also "foo“.

Auf diese Weise ist es möglich, das an sich unbrauchbare Format von %TIME% (HH:MM:SS,nn) in einen einzigen Wert (Hundertstel-Sekunden) umzuwandeln und mit "SET /A“ weiter zu verrechnen.

0 Kommentare zu diesem Artikel
688782