3

PowerShell を使用して SharePoint リスト内のアイテムの値を変更するにはどうすればよいですか? 次のことを試すと:

$splist.GetItems() | ForEach-Object{
 #Write-Host $_["Item"]

 if($_["Item"] -eq $null){
  $SPFileCollection = $folder.Files
  $upFile=Get-ChildItem D:\Tools\SP-scripts\MDNSO-template.aspx
  $tmpValue = $_["Title"]
  $filename = "EM_Doc_Library\$tmpValue"
  $SPFileCollection.Add("EM_Doc_Library\$tmpValue",$upFile.OpenRead(),$false)
  Write-Host "creating the file"
  Write-Host $_["Title"]
  $_["Item"] = "MDNSO-<$tmpValue>"
 }
}

それは言う、unable to index into an object of type SPlistItem.

4

2 に答える 2

9

ここにあなたがしようとすることができることの要約があります:

$spWeb = Get-SPWeb -Identity http://yourdomain/sites/config
$spList = $spWeb.Lists["AppSettings"]
$spItem = $spList.GetItemById(10013) //or another way that you prefer.
$spItem["Name"] = "MyName"
$spItem.Update()

詳細については、このブログ投稿を確認してください。PowerShell を使用してリスト項目を追加、更新、および削除する方法の例が含まれています: http://mysharepointwork.blogspot.no/2010/09/addupdatedelete-list-items-using.html

于 2012-06-21T08:54:31.373 に答える
0

powershellを使用して、 social.msdn.microsoft.com/Forumsのスクリプトで非常に完璧に 実行しました

サンプル コードは次のとおりです。プロンプトが表示されたら、「YES」と入力して続行します。2 つの変数のみを置き換えます: (urlToTheYourSite & YourListNameToDelete)

write-host "This will delete data, type YES to continue"
$retval = read-host 
if ($retval -ne "YES") 
{
    write-host "exiting - you did not type yes" -foregroundcolor green
    exit
}
write-host "continuing"

$web = get-spweb https://urlToTheYourSite
$list = $web.lists | where {$_.title -eq "YourListNameToDelete"}
Write-host "List $($list.title) has $($list.items.count) entries"
$items = $list.items

foreach ($item in $items)

{
    Write-host "  Say Goodbye to $($item.id)" -foregroundcolor red

    $list.getitembyid($Item.id).Delete()
}
于 2017-11-30T07:17:24.750 に答える