如何在 PowerShell 中使用秒錶?


要在 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()

您可以使用 Elapsed 屬性檢查經過的時間。

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

更新於:11-Nov-2020

9K+ 次瀏覽

開啟你的 職業生涯

完成課程認證

開始
廣告
© . All rights reserved.