powershell中的新TimeSpan cmdlet

powershell中的新TimeSpan cmdlet,powershell,powershell-2.0,Powershell,Powershell 2.0,如何使用New-Timespan cmdlet计算脚本执行的总时间。我尝试了这样的示例 $val=Get-Date $start=New-TimeSpan -Start $val $val2=Get-Date $end=New-TimeSpan -End $val2 $diff=New-TimeSpan -Start $start -End $end 但最终出现以下错误:New TimeSpan:无法绑定参数“Start”。无法将“System.TimeSpan”类型的“00:00:08.71

如何使用New-Timespan cmdlet计算脚本执行的总时间。我尝试了这样的示例

$val=Get-Date
$start=New-TimeSpan -Start $val
$val2=Get-Date
$end=New-TimeSpan -End $val2
$diff=New-TimeSpan -Start $start -End $end
但最终出现以下错误:New TimeSpan:无法绑定参数“Start”。无法将“System.TimeSpan”类型的“00:00:08.7110000”值转换为
键入“System.DateTime”。

您不需要使用
newtimespan
只需减去
DateTime
对象:

$script_start = Get-Date
Start-Sleep -Seconds 5
$script_end = Get-Date
$script_end - $script_start

这将创建一个
TimeSpan
对象。

您可以使用
测量命令。它返回一个timespan对象。例如:

PS C:\> Measure-Command -Expression {1..10000000}


Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 1
Milliseconds      : 714
Ticks             : 17149279
TotalDays         : 1.98487025462963E-05
TotalHours        : 0.000476368861111111
TotalMinutes      : 0.0285821316666667
TotalSeconds      : 1.7149279
TotalMilliseconds : 1714.9279