是否可以在2013 Sharepoint Server上导出Sharepoint 2010列表? 我希望能够将2010年站点上的列表中的内容导出到csv文件中,然后使用PowerShell将其导入2013站点上的列表。
运行脚本时,我会收到:
Get-SPWeb : Cannot find an SPSite object that contains the following Id or Url:" error.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Get the Web
$web = Get-SPWeb -identity "http://www.test2010.com/site/"
#Get the Target List
$list = $web.Lists["My List"]
#Array to Hold Result - PSObjects
$ListItemCollection = @()
#Get All List items where Status is "In Progress"
$list.Items | Where-Object { $_["ID"] -ge 1} | foreach {
$ExportItem = New-Object PSObject
$ExportItem | Add-Member -MemberType NoteProperty -name "Title" -value $_["Title"]
$ExportItem | Add-Member -MemberType NoteProperty -name "ID" -value $_["ID"]
#Add the object with property to an Array
$ListItemCollection += $ExportItem
}
#Export the result Array to CSV file
$ListItemCollection | Export-CSV "c:\ListInfo.csv" -NoTypeInformation
#Dispose the web Object
$web.Dispose()
答案 0 :(得分:0)
Powershell用于与Microsoft.SharePoint.Powershell
管理单元进行SharePoint交互的服务器对象模型只能与在同一服务器上运行的SharePoint环境进行交互。也就是说,需要与SharePoint场交互的任何此类Powershell脚本都需要从该场的Web前端服务器执行。
如果您从不属于该SharePoint场的服务器运行Powershell,但仍需要访问该服务器场中的列表,请考虑使用SharePoint的客户端对象模型。由于可以通过.NET代码访问客户端对象模型,因此仍然可以使用Powershell。