我正在使用 RestAPI 訪問 azure。我正在獲取構建 ID 的變更集串列。我想通過增加變更集數量對物件型別進行排序。
我收到的 $changeset.GetType() 型別:
IsPublic IsSerial 名稱 BaseType
真 假 PSCustomObject System.Object
這是輸出 $changeset
計數值
50 {@{id=68.......
因此,我檢查了值的型別: $changeset.value.GetType()
IsPublic IsSerial 名稱 BaseType
真真物件[] System.Array
然后我檢查了一個元素的型別:
$changeset.value[0].GetType():
IsPublic IsSerial 名稱 BaseType
真 假 PSCustomObject System.Object
我確實嘗試了升序和降序的排序物件,但它不會改變順序:
$changeset = $changeset | 排序物件 { $_.value.id } -desc
我想保持結構不變,以免破壞某些東西。組件中有很多屬性。希望有人對PowerShell更有經驗并且有想法。
uj5u.com熱心網友回復:
如果沒有示例作業資料集,很難為您的用例創建一個絕對有效的解決方案,但是您可以使用以下方法對資料進行排序:
$changeset | Select-Object -ExpandProperty value | Sort-Object -Property id
這將回傳立即屬性下的所有物件value并按屬性排序id。
uj5u.com熱心網友回復:
如果您想將物件作為一個整體保留其當前結構:
$changeset.value = @($changeset.value | Sort-Object -Descending -Property Id)
那是:
您必須將
Sort-Object呼叫應用到屬性,該屬性包含要按屬性值排序的實體.value陣列。[pscustomobject].Id將命令括在
@(...)陣列子運算式運算子中,確保排序物件被視為一個陣列,即使在某些情況下可能只存在一個物件。將結果分配回以
$changeset.value用新的排序陣列替換原始陣列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/462213.html
上一篇:發送一封包含多個資料的電子郵件
