Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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
Sorting 是否有任何简单的方法可以使用PowerCLI根据ESX主机的总体利用率对其进行排序?_Sorting_Powershell_Vmware_Powercli_Utilization - Fatal编程技术网

Sorting 是否有任何简单的方法可以使用PowerCLI根据ESX主机的总体利用率对其进行排序?

Sorting 是否有任何简单的方法可以使用PowerCLI根据ESX主机的总体利用率对其进行排序?,sorting,powershell,vmware,powercli,utilization,Sorting,Powershell,Vmware,Powercli,Utilization,我尝试使用与此类似的代码对主机进行排序(这可能有点不正确,因为我目前没有安装PowerCLI): 问题是,它首先基于CPUUsageMhz对其进行排序,然后根据MemorySageGB对其进行排序。我想对它进行排序,使总体使用率最低(内存和CPU)的主机位于列表的顶部/前部,而使用率最高的主机位于底部。我当前的排序方法遇到的一个问题是,CPUUsageMhz最低的主机具有最高的内存SAGEGB。请从中查看示例6 这说明了如何设计具有独立升序首选项的自定义排序算法 您将需要自己设计算法,因为没有标

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


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

请从中查看示例6

这说明了如何设计具有独立升序首选项的自定义排序算法

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


祝你好运

谢谢,我将开始尝试找出一种算法来对它们进行更好的排序。我不确定是否有更简单的方法,因为它使用powercli;但这应该行得通。
$hosts = Get-VMHost
$SortedHosts = $hosts | Sort-Object CPUUsageMhz,MemoryUsageGB
get-childitem *.txt | sort-object -property @{Expression={$_.LastWriteTime - $_.CreationTime}; Ascending=$false}