Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 邮件迁移监控_Powershell_Exchange Server - Fatal编程技术网

Powershell 邮件迁移监控

Powershell 邮件迁移监控,powershell,exchange-server,Powershell,Exchange Server,我有以下脚本来监视一些邮件迁移 它工作正常,但时间显示不正确,当大小超过1024MB时,它将变为空白 get-moverequest| get-moverequeststatistics |Sort-Object PercentComplete -Descending | ft displayname, @{l=" % "; expression="percentcomplete"}, @{l="Size";e={$_.Totalitemsize.value.toString().

我有以下脚本来监视一些邮件迁移

它工作正常,但时间显示不正确,当大小超过1024MB时,它将变为空白

get-moverequest| get-moverequeststatistics |Sort-Object PercentComplete -Descending | 
  ft displayname, @{l=" % "; expression="percentcomplete"},
    @{l="Size";e={$_.Totalitemsize.value.toString().SubString(0,($_.totalitemsize.ToString().IndexOf("MB")))}} ,
    @{l="Moved";e={$_.BytesTransferred.ToString().SubString(0,($_.BytesTransferred.ToString().IndexOf("MB")))}},
    @{l="Rate";e={$_.BytesTransferredPerMinute.ToString().SubString(0,($_.BytesTransferredPerMinute.ToString().IndexOf("MB")))}}, 
    @{l="Time";e={$_.totalinprogressduration}},statusdetail  -AutoSize|  Out-String
如果我将“tomber()”更改为“ToGB()”,那么在达到1GB之前,这些行都是空白的

此外,时间显示不正确,因为它显示HH:MM:SS:xxxxxx如何将此更改为真实时间

短暂性脑缺血发作


Andy

你所说的“真实”时间是什么意思?它现在显示小时、分钟、秒和一秒的部分。我只想要hh:mm:ss格式的时间戳,您应该编写
$TimeStamp.ToString('dd\.hh\:mm\:ss')
。在这种情况下,它是
$.totalinprogressduration.ToString('dd\.hh\:mm\:ss')
或者是PowerShell样式的
{0:dd\.hh\:mm\:ss}'-f$\\.totalinprogressduration
。我尝试过了,时间列变为空,以删除时间秒分数更改
{l=“time”;e={$.totalinprogressduration={$\.totalinprogressduration.Split('.)[0]}}'