转载请注明出自天外归云的博客园web
PowerShell是基于.NET的一门脚本语言,对于SharePoint一些平常操做支持的很好。今天上午同事作数据量测试,要在一个site下建立500个list和500个library,在一个list中建立1000个item,这样的需求经过PowerShell脚本实现是很是容易的。api
下面是为这项测试写的两个小dom
Add-PSSnapin Microsoft.SharePoint.PowerShell //在list中建立1000个item function CreateListData { param($siteUrl,$listTitle) $site = Get-SPSite $siteUrl $web = $site.rootweb $List = $web.lists[$listTitle] for($i=1;$i -le 1000;$i++){ $date = Get-Date $random = Get-Random 100 $sign = $date.month+$date.day+$date.hour+$date.minute+$date.second+$random $newItem = $List.Items.Add() $newItem["Title"] = $random.ToString() + $sign.ToString() + $List.Title + "TestData" $newItem.Update() } } //删除指定list中数据 function DeleteListData { param($siteUrl,$listTitle) $site = Get-SPSite $siteUrl $web = $site.rootweb $List = $web.lists[$listTitle] foreach($item in $list.items) { $List.getitembyid($item.id).delete() } } //建立list和library各500个 function CreateLibsAndLists { param($siteUrl) $site = Get-SPSite $siteUrl $web = $site.rootweb for($i=1;$i -le 500;$i++) { $web.Lists.Add("TestDocLib"+$i,"",$web.ListTemplates["Document Library"]) } for($i=1;$i -le 500;$i++) { $web.Lists.Add("TestCusList"+$i,"",$web.ListTemplates["Custom List"]) } }
管理员权限运行PowerShell后,复制上述脚本在PowerShell窗口内点右键粘贴进去,按回车,而后执行下述的命令就能够实现批量作数据的需求了:ide
//删除list数据命令 DeleteListData -siteUrl "Your site's Url" -listTitle "Your list's title" //建立list item命令 CreateListData -siteUrl "Your site's Url" -listTitle "Your list's title" //建立list和library命令 CreateLibsAndLists