【问题标题】:Powershell to perform SharePoint list operationsPowershell 执行 SharePoint 列表操作
【发布时间】:2012-07-31 18:23:18
【问题描述】:

我有两个相同的 SharePoint 2007 列表。

我可以使用 powershell 执行以下操作吗:

  1. 将第一个列表复制到第二个列表及其所有项目版本历史记录。
  2. 从第一个列表中删除所有版本历史记录
  3. 为第一个列表中的每个项目清除大约 15 列

另外,让用户通过 SharePoint 2007 中网页上的按钮执行该 powershell 脚本的最佳方法是什么?

非常感谢任何有关此脚本外观的帮助!

【问题讨论】:

    标签: sharepoint powershell sharepoint-2007 version custom-lists


    【解决方案1】:

    由于您可以使用 PowerShell 中的任何 DLL,是的,您可以使用 PowerShell 中的 SharePoint API。

    基本上可以

    1. stsadm 扩展 gl-copylist 命令克隆列表(你可以从 PowerShell 调用该命令)
    2. There is already a PowerShell script 禁用版本控制,但它涉及所有列表 - 您可能可以获得所需的块。
    3. 调用 SPList.Fields["fieldToDelete"].Delete();删除列表中的字段。

    关于#2 - 不确定这个,但您可以尝试将SPList.EnableVersioning 设置为false.Update(),然后设置为true,看看它是否会自动删除版本。

    要从 powershell 访问 SharePoint API,请执行 (read more here):

    [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
    

    请注意,您只能从安装了 SharePoint 的计算机上执行此操作。否则,您将不得不通过 Web 服务与 PowerShell 对话。

    【讨论】:

      猜你喜欢
      • 2012-06-14
      • 1970-01-01
      • 1970-01-01
      • 2020-09-22
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 2011-12-31
      • 1970-01-01
      相关资源
      最近更新 更多