计算变量时出错

时间:2016-06-30 02:54:16

标签: powershell powershell-v2.0

我想计算特定文件夹的已用空间百分比,并显示与阈值相比较的值,即85%但是当我写下面的代码时,我收到错误:

  

无法转换" Microsoft.PowerShell.Commands.GenericMeasureInfo"类型的值" Microsoft.PowerShell.Commands.GenericMeasureInfo"输入" System.Double"。

代码:

$Path = "C:\Nikhil"
$Workspace = (Get-ChildItem $Path -recurse | Measure-Object -property length -sum)
"{0:N2}" -f ($Workspace.sum / 1GB)
$Workspace1 = $Workspace -as [double]
$Percentage = ($Workspace1/6143.87)*100
if($Percentage -le 85)
{
    $body += "`t" + $Path + " is $Percentage percent utilized. "
}

请你纠正我在哪里做错了?提前谢谢。

1 个答案:

答案 0 :(得分:2)

这一行

$Workspace1 = $Workspace -as [double]

应该是

$Workspace1 = $Workspace.Sum -as [double]

因为$ Workspace是一个具有属性的测量对象,而不是数字。