我有一些工作,我想要一个不错的输出。目前使用这个:
Get-Job | Format-Table -Property name, state, @{n = 'Started'; e = {$($_.psbegintime).tostring("HH:mm:ss")}}, @{n = 'Completed'; e = {$($_.psendtime).tostring("HH:mm:ss")}}
我想再创建一列n = 'Elapsed'
。
如果作业正在运行,它应该计算
$(get-date) - $_.psbegintime
如果工作完成,那么它应该计算
$_.psendtime - $_.psbegintime
我试过$(if ($_.state -ieq "running") {$(get-date) - $_.psbegintime} {$_.psendtime - $_.psbegintime})
了,但它有奇怪的输出:{00:00:05.0532890, $($_.psendtime - $_.psbegintime)}
.
我以为我可以替换值( )的$_.psendtime
原因,但我又失败了。null
($_.psendtime, get-date)[0]
谢谢你的帮助!