0

我尝试使用与此类似的代码对主机进行排序(这可能有点不正确,因为我目前不在安装 PowerCLI 的盒子中):

$hosts = Get-VMHost
$SortedHosts = $hosts | Sort-Object CPUUsageMhz,MemoryUsageGB

这样做的问题是它首先根据 CPUUsageMhz 对其进行排序,然后再根据 MemoryUsageGB 对其进行排序。我想对其进行排序,使总体使用率最低的主机(内存和 CPU)位于列表的顶部/前面,而使用率最高的主机位于底部。我使用当前排序方法遇到的一个问题是 CPUUsageMhz 最低的主机的 MemoryUsageGB 最高。

4

1 回答 1

0

查看Sort-Object 帮助中的示例 6 。

get-childitem *.txt | sort-object -property @{Expression={$_.LastWriteTime - $_.CreationTime}; Ascending=$false}

这说明了如何设计具有独立升序偏好的自定义排序算法。

您需要自己设计算法,因为没有标准的方法来对 CPU 和 RAM 使用的组合进行排序。根据复杂性,您可能需要自己处理排序,而不是使用 Sort-Object。

祝你好运!

于 2014-03-09T19:23:33.323 回答