PowerShell: Measure-Command
Measure with micrometer, mark with chalk, cut with axe.
UNIX shell környezetben megszoktam, hogy parancsok futásidejét könnyű mérni a time
parancs segítségével. Mostanában azonban viszonylag sokat használok PowerShellt (sokkal többet mint basht), amikor pedig szükségem lett erre a tudásra, hirtelen elszégyelltem magam, hogy még ezt sem tudom megcsinálni PowerShell alatt.
A megoldás amúgy elég egyszerű: a Measure-Command
parancs segítségével könyen mérhető egy script-blokk futásideje, a válasz ráadásul struktúrált (System.TimeSpan
.Net típus, hisz PowerShell alatt vagyunk), nem igényel parzolást ha számolni akarunk vele.
Végezetül egy egyszerű példa:
Measure-Command { Get-EventLog "windows powershell" }
aminek a kimenetele nálam például ez:
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 450
Ticks : 4505313
TotalDays : 5,21448263888889E-06
TotalHours : 0,000125147583333333
TotalMinutes : 0,007508855
TotalSeconds : 0,4505313
TotalMilliseconds : 450,5313