2012-04-02 12 views
2

下面的powershell代碼返回一個Changeset列表。我想遍歷每個變更集以便我可以訪問這些屬性。在Get-TfsItemHistory之後循環更改集 - Powershell

$items = Get-TfsItemHistory $tfsProject -Version "D$lastChangeDateTime~" -Recurse -Server $tfs -IncludeItems 

例如

foreach($item in $items) 

{ 

    Write-Host $item.ServerItem 
} 

我相信ServerItem屬性保存的路徑在服務器上已更改的文件。還有其他屬性我想訪問。 任何幫助,將不勝感激。 這樣做的目的是部署每個變更集中關聯的文件。我會將它們複製到服務器,並需要訪問其他屬性以獲取通知,評論和其他內容。

回答

1

嘗試在foreach

$Item | get-member 

或者乾脆

$items[0] | get-member # if is an array 

來檢索對象提供的屬性和方法的列表。

+0

嘿基督教,感謝您的迴應。 get-member返回一個列表,顯示不同的方法/屬性和membertype的解釋。它沒有給出該項目的任何價值。 – Akin 2012-04-02 19:11:10

+0

當然!您的對象$ item的屬性和/或方法列表。知道這些屬性後,可以在腳本中使用它。 – 2012-04-02 19:14:01

+0

好的,謝謝克里斯蒂安,我明白你現在得到了什麼。如果這對你很好,我還有另外一個問題。如果我要將$ items數組寫入控制檯,則會看到一個Serveritem屬性。我不認爲我可以使用Get-Member公開的任何屬性訪問該屬性。當我做$ item.Changes時,我再次看到這個屬性。我怎樣才能訪問這個?我是否做類似$ item.Changes.Serveritem的東西? – Akin 2012-04-02 19:26:33