powershell - Sharepoint - 使用 powershell 将所有数据导出到 csv
问题描述
我正在尝试使用 Thriggle See His Answer Here提供的脚本,但遇到了一些问题。它几乎完美地适用于我正在做的事情——除了——它不会导出创建者、创建日期、修改者和修改日期。
有没有办法将这些字段添加到脚本中?
这是他的脚本:
$url = "$url"
$listName = "$list"
$path ="c:\ColumnsOfList.csv"
$web = Get-SPWeb $url
$list = $web.Lists.TryGetList($listName)
$fields = $list.ContentTypes | %{ $_.FieldLinks } | select Name, DisplayName
$items = @() #array to store objects representing list items
$list.items | %{
$item = $_;
$hash = @{}; #hash table to store field name-value pairs
$fields | %{ $hash[$_.DisplayName] = $item[$_.Name] };
$items += new-object psobject -Property $hash }
$items | Export-Csv -Path $path
解决方案
你可以试试这个。
这是我的测试代码。
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Get the Web
$web = Get-SPWeb -identity "http://sp:12001"
#Get the Target List
$list = $web.Lists["OrderDetails"]
#Array to Hold Result - PSObjects
$ListItemCollection = @()
#Get All List items where Status is "In Progress"
$list.Items | foreach {
$ExportItem = New-Object PSObject
$ExportItem | Add-Member -MemberType NoteProperty -name "Title" -value $_["Title"]
$ExportItem | Add-Member -MemberType NoteProperty -Name "OrderDate" -value $_["OrderDate"]
$ExportItem | Add-Member -MemberType NoteProperty -name "CreatedBy" -value $_["Author"]
$ExportItem | Add-Member -MemberType NoteProperty -name "Created" -value $_["Created"]
#Add the object with property to an Array
$ListItemCollection += $ExportItem
}
#Export the result Array to CSV file
$ListItemCollection | Export-CSV "C:\Lee\ListData.csv" -NoTypeInformation
#Dispose the web Object
$web.Dispose()
推荐阅读
- swiftui - 重置路径描边动画
- xml - 如何揭示复杂 XML 的结构
- python - 我收到错误会话未创建:Selenium Edge WebDriver 未找到匹配功能
- reactjs - Material-UI 如何在 MenuItem 中使用 forwardRef
- javascript - 如何比较两个数组并删除、更新数组的元素
- android - 程序类型已经存在:androidx.core.internal.package-info
- webdatarocks - 如何比较新列中的列
- c++ - 如何将 CRTP 中的模板派生类与派生类表达式模板结合起来?
- visual-studio-code - 是否可以将 VSCode 颜色主题导出到 PhpStorm?
- css - 设置响应 768px 宽度