您的位置:首页 > 运维架构 > Shell

SharePoint自动化系列——通过PowerShell在SharePoint中批量做数据

2015-06-12 17:01 519 查看
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/

PowerShell是基于.NET的一门脚本语言,对于SharePoint一些日常操作支持的很好。今天上午同事做数据量测试,要在一个site下创建500个list和500个library,在一个list中创建1000个item,这样的需求通过PowerShell脚本实现是非常容易的。

下面是为这项测试写的两个小

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窗口内点右键粘贴进去,按回车,然后执行下述的命令就可以实现批量做数据的需求了:

//删除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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: