1. 程式人生 > >SharePoint:如何使用PowerShell批量刪除名稱以XXX開始的List?

SharePoint:如何使用PowerShell批量刪除名稱以XXX開始的List?

sta 批量刪除 .com 壓力 ear shell腳本 ons logs 適用於

很多時候,用戶都將SharePoint作為數據存儲和管理平臺,長期積累,數據累加很多,以IT部門為例,為了排查系統問題,會定期將各種系統的log保存起來,這種情況下,一旦超過一定時間了,這部分數據對IT而言沒有存在的價值和意義了,為了釋放SharePoint平臺的存儲壓力和資源,可能考慮如何批量清除這部分數據。

這裏為大家分享一個解決方案,嘗試使用PowerShell腳本來批量刪除名稱以XXX開始的List。

本示例,適用於SharePoint 2013,SharePoint 2016和SharePoint 2019。

具體操作步驟:

  1. 驗證SharePoint的網站的List 信息,以名為SharePoint Logs開始的Library都是用來存儲SharePoint Logs的。

技術分享圖片

  1. 以管理員身份打開SharePoint PowerShell,執行命令以下腳本:

    $startsWith = "SharePoint Logs"
    $site = Get-SPSite http://www.demo.com/sites/IT
    $webs = $site.AllWebs
    $need = New-Object System.Collections.ArrayList

    foreach ($web in $webs) {
    $lists = $web.Lists
    $need.clear()
    for ($index = 0; $index -lt $lists.Count; $index++) {

    if ($lists[$index].Title.StartsWith($startsWith)) {
    $need.add($lists[$index])
    }
    }
    foreach ($list in $need)
    {
    $list.Delete()
    }
    $web.Dispose()
    }

    $site.Dispose()

    說明:
    ? $startsWith = "SharePoint Logs"是預計刪除的名為什麽開始的Library
    ? $site = Get-SPSite http://www.demo.com/sites/IT 是具體的Site Collection

  2. 4個文檔庫,批量被刪除,命令執行成功。

技術分享圖片

大家可以根據實際需求靈活使用,若有其他疑問,歡迎線下聯系。

SharePoint:如何使用PowerShell批量刪除名稱以XXX開始的List?