2012-04-05 69 views
0

我需要使用PowerShell更新SharePoint中列表中的所有項目。我需要更新[在每個列表項中]的列是具有5種不同選擇的選擇列。我需要爲每個列表項目隨機分配一個選項。使用PowerShell隨機選擇更新SharePoint列表選項列

如果可能,我想爲這些選擇中的每一個選擇一個概率! (即 - 選擇1 = 30%機率,選擇2 = 30%機率,選擇3 = 30%機率,選擇4 = 5%機率,選擇5 = 5%機率)

我已經開始構建腳本,但我不確定如何處理get-random部分,或者如果我在這種情況下使用get random。

幫助表示讚賞!

$web = Get-SPWeb http://weburl 
$list = $web.Lists["Project Tasks Backup"] 
foreach ($item in $list.Items) 
{ 
    $item["Task Status"] = $choices | Get-Random 
    $item.Update(); 
} 

非常感謝!

-Josh

回答

0

假設獲取無規滿足您的隨機性requrirements,您可以先創建的選擇陣列,您指定的權重,這樣的:

$a = @('c1')*6 + @('c2')*6 + @('c3')*6 + @('c4','c5') 

然後你可以使用Get-隨機隨機選擇從數組中的元素:

$selected = Get-Random -InputObject $a 

或者,您可以洗牌數組:

$shuffled = Get-Random -InputObject $a -Count $a.Length