Powershell执行SharePoint列表操作

时间:2012-08-02 18:04:18

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

我有两个同一个SharePoint 2007列表。

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

  1. 将第一个列表复制到第二个列表及其所有项目版本历史记录。
  2. 从第一个列表中删除所有版本历史记录
  3. 为第一个列表中的每个项目清理约15列
  4. 此外,通过SharePoint 2007中的网页上的按钮使PowerShell脚本可执行的最佳方法是什么?

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

1 个答案:

答案 0 :(得分:0)

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

基本上你可以

  1. stsadm extension gl-copylist命令克隆列表(无论如何都可以从PowerShell调用该命令)
  2. There is already a PowerShell script禁用版本控制,但它涉及所有列表 - 您可能可以获得所需的块。
  3. 调用SPList.Fields [“fieldToDelete”]。删除();删除列表中的字段。
  4. 关于#2 - 对此不确定,但您可以尝试将SPList.EnableVersioning设置为false.Update(),然后设置为true并查看是否删除版本自动。

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

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

    注意,您只能从安装了SharePoint的计算机上执行此操作。换句话说,您必须通过Web服务与PowerShell交谈。