要在PowerShell中使用秒表,我们需要使用[System.Diagnostics.Stopwatch]类。
我们将为此类创建一个新对象,
$stopwatch = [System.Diagnostics.Stopwatch]::new()
以下是上述秒表类的成员。
PS C:\> $Stopwatch | gm TypeName: System.Diagnostics.Stopwatch Name MemberType Definition ---- ---------- ---------- Equals Method bool Equals(System.Object obj) GetHashCode Method int GetHashCode()GetType Method type GetType()Reset Method void Reset()Restart Method void Restart()Start Method void Start()Stop Method void Stop()ToString Method string ToString()Elapsed Property timespan Elapsed {get;} ElapsedMilliseconds Property long ElapsedMilliseconds {get;} ElapsedTicks Property long ElapsedTicks {get;} IsRunning Property bool IsRunning {get;}
您可以在上面看到可以开始,停止,重新启动和重置秒表,并且在开始之前所有值都应为0。
PS C:\> $Stopwatch.Elapsed Days : 0 Hours : 0 Minutes : 0 Seconds : 0 Milliseconds : 0 Ticks : 0 TotalDays : 0 TotalHours : 0 TotalMinutes : 0 TotalSeconds : 0 TotalMilliseconds : 0
现在,我们将使用Start()方法启动计时器。
$Stopwatch.Start()
您可以使用检查经过的时间经过的财产。
PS C:\> $Stopwatch.Elapsed Days : 0 Hours : 0 Minutes : 1 Seconds : 42 Milliseconds : 284 Ticks : 1022842838 TotalDays : 0.00118384587731481 TotalHours : 0.0284123010555556 TotalMinutes : 1.70473806333333 TotalSeconds : 102.2842838 TotalMilliseconds : 102284.2838
要检索以上任何属性,请使用属性名称。例如,
PS C:\> $Stopwatch.Elapsed.Minutes 4
要停止秒表,请使用Stop();要重置秒表,请使用Reset()方法;要重新启动秒表,请使用Restart()方法。
PS C:\> $Stopwatch.Reset() PS C:\> $Stopwatch.Elapsed Days : 0 Hours : 0 Minutes : 0 Seconds : 0 Milliseconds : 0 Ticks : 0 TotalDays : 0 TotalHours : 0 TotalMinutes : 0 TotalSeconds : 0 TotalMilliseconds : 0 PS C:\> $Stopwatch.Restart() PS C:\> $Stopwatch.Elapsed Days : 0 Hours : 0 Minutes : 0 Seconds : 1 Milliseconds : 757 Ticks : 17570261 TotalDays : 2.03359502314815E-05 TotalHours : 0.000488062805555556 TotalMinutes : 0.0292837683333333 TotalSeconds : 1.7570261 TotalMilliseconds : 1757.0261 PS C:\> $Stopwatch.Stop() PS C:\> $Stopwatch.Elapsed Days : 0 Hours : 0 Minutes : 6 Seconds : 36 Milliseconds : 121 Ticks : 3961214918 TotalDays : 0.00458473948842593 TotalHours : 0.110033747722222 TotalMinutes : 6.60202486333333 TotalSeconds : 396.1214918 TotalMilliseconds : 396121.4918