powershell を使用して SharePoint リストで重複する値を見つけ、それらの名前を「_1」、「_2」、「_3」などに変更する方法はありますか?
私のテスト「製品」リストの例として、次の項目があります。
したがって、「SAPMaterial」値が重複している上記の強調表示されたアイテムの場合、powershell を使用してリストを調べて、値が重複しているアイテムを見つけ、重複値が見つかった場合は「SAPMaterial」値を次のように更新する方法はありますか?お気に入り:
- 000000000000227142_1
- 000000000000227142_2
等々....
powershell でこれを行う方法を知りたい理由は、約 300 項目のリストがあり、これらの項目のかなりの数で "SAPMaterial" 列の値が重複しているためです。これを手動で行うと、永遠に時間がかかります。
私がこれまでに持っているpowershellは次のとおりです。
#Add-PSSnapin microsoft.sharepoint.powershell
$web = Get-SPWeb -Identity "siteURL/"
$list = $web.Lists["Products"]
$AllDuplicates = $list.Items.GetDataTable() | Group-Object SAPMaterial | where
{$_.count -gt 1}
$count = 1
$max = $AllDuplicates.Count
foreach($duplicate in $AllDuplicates)
{
$duplicate.group | Select-Object -Skip 1 | % {$list.GetItemById($_.ID).Delete()}
Write-Progress -PercentComplete ($count / $max * 100) -Activity "$count duplicates
removed" -Status "In Progress"
$count++
}
提案をありがとう...