2015-10-06 82 views
0

這是一個元組是最剝離下來的例子就是我嘗試和失敗的事:PowerShell的排序不工作

@(1, 3, 2) | Select-Object {New-Object "tuple[Int,Int]" $_, 1} | Sort-Object -Property Item1 

它返回:

(2, 1) 
(3, 1) 
(1, 1) 

我期待返回列表按元組的第一個元素排序。很明顯,在這個小演示中,我可以首先進行排序,但在我的實際使用案例中,我在Select-Object階段執行了對列表的計算,然後想根據計算結果進行排序。

我當然沒有結婚使用元組,但我嘗試過使用其他沒有成功的選項失敗。我只需要列出一個列表,根據計算結果爲列表中的每個元素添加附加信息,然後按附加信息進行排序。

感覺真的很愚蠢,現在給了多久,這讓我想出瞭如此任何幫助表示讚賞。

回答

2

如果您只是將自定義屬性添加到對象,請嘗試使用其他屬性返回一個新對象。使用與@(1,3,2)相同的示例:

@(1, 3, 2) | % { 
    [PSCustomObject] @{ 
     Item1 = $_ 
     Item2 = 1 
    } 
} | Sort-Object -Property Item1