不确定如何解释这一点,我们正在对Azure上的磁盘使用情况进行评估,以降低成本。我们正在尝试评估每个虚拟机上的空间并减少磁盘
我想根据可用空间在其中添加推荐列,如果可用空间大于90%,则添加注释“考虑调整大小”,如果小于15%,则“考虑磁盘清理”。 / p>
我的脚本工作正常,但它没有添加注释,首先我尝试了这个...
$computers = (Get-AdComputer -Filter "name -like 'VM-*'").Name | Sort-Object
foreach ($computer in $Computers)
{
$vol = gwmi Win32_volume -Computer $Computer -Filter 'DriveType = 3'
#$vol
$info = $vol | select PsComputerName, DriveLetter, Label,
@{n='Capacity';e={[int]($_.capacity/1GB)}},
@{n='FreeSpace';e={[int]($_.FreeSpace/1GB)}},
@{n='FreeSpace (%)';e={[int](($_.FreeSpace) / ($_.capacity) * 100.0)}}
if ('FreeSpace (%)' -gt 85)
{
Write-Output "Disk Usage Low, Consider Resizing Options"
}
else
{
Write-Output "Disk Usage High"
}
$info | Export-Csv "c:\temp\tempfiles\question.csv" -Append
}
那不起作用,然后我尝试添加另一个部分,我得到真或假,这似乎有用..一个在下面,但我需要dd推荐..
$computers = (Get-AdComputer -Filter "name -like 'VM-*'").Name | Sort-Object
foreach ($computer in $Computers)
{
$vol = gwmi Win32_volume -Computer $Computer -Filter 'DriveType = 3'
#$vol
$info = $vol | select PsComputerName, DriveLetter, Label,
@{n='Capacity';e={[int]($_.capacity/1GB)}},
@{n='FreeSpace';e={[int]($_.FreeSpace/1GB)}},
@{n='FreeSpace (%)';e={[int](($_.FreeSpace) / ($_.capacity) * 100.0)}},
@{n='Recommendation';e={[String] ($_.FreeSpace -gt 90)}}
$info | Export-Csv "c:\temp\tempfiles\question.csv" -Append
}
希望这是有道理的。
提前致谢:)
答案 0 :(得分:2)
e
代表Expression
。所以你应该能够在那里使用一个表达式,使用原始对象属性(即不是你的自定义属性名称,如FreeSpace (%)
)
$computers = (Get-AdComputer -Filter "name -like 'VM-*'").Name | Sort-Object
foreach ($computer in $Computers)
{
$vol = gwmi Win32_volume -Computer $Computer -Filter 'DriveType = 3'
#$vol
$info = $vol | select PsComputerName, DriveLetter, Label,
@{n='Capacity';e={[int]($_.capacity/1GB)}},
@{n='FreeSpace';e={[int]($_.FreeSpace/1GB)}},
@{n='FreeSpace (%)';e={[int](($_.FreeSpace) / ($_.capacity) * 100.0)}},
@{n='Recommendation';e={
if((($_.FreeSpace) / ($_.capacity) * 100.0) -gt 90){
"Disk Usage Low, Consider Resizing Options"
}elseif((($_.FreeSpace) / ($_.capacity) * 100.0) -gt 75){
"Something else"
}else{
"Disk Usage High"
}
}
$info | Export-Csv "c:\temp\tempfiles\question.csv" -Append
}