kwizcom banner advertisement

Empty SharePoint Recycle Bins Programmatically with PowerShell

Requirement: Empty recycle bin in SharePoint
In a Database attachment method migration project, we decided to clear all the recycle bins to get some additional free space in databases. There were 3000+ site collections. Automation?

SharePoint Automation = PowerShell :-)
how to empty sharepoint recycle bin using powershell
Empty SharePoint Site Collection Recycle bin using PowerShell:
Here is the PowerShell script to empty SharePoint recycle bin.

#Get the Site Collection
$Site = Get-SPSite ""

#Delete all from 1st Stage Recycle bin
$Site.AllWebs | Foreach-object { $_.RecycleBin.MoveAllToSecondStage() }

#Empty 2nd Stage Recycle bin
This deletes all items from recycle bin in SharePoint 2013 using PowerShell.

PowerShell Script to Empty SharePoint Recycle Bins Programmatically:
Lets empty the recycle bin of all site collection under a given web application. Here is the PowerShell to delete all items in recycle bin.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue 

$WebApp=Get-SPWebApplication ""

    foreach ($SPSite in $webApp.Sites)
      #get the collection of webs
      foreach($SPWeb in $SPSite.AllWebs)
             #Empty the 1st Stage Recycle bin items PERMENANTLY
             #Send the 1st Stage Recycle bin items to 2nd Stage

              write-host "End-User Recycle Bin Items Deleted for:" 
              write-host $SPWeb.title ":" $SPWeb.URL "`n"

              #Dispose Web object
             #Empty SharePoint site collection recycle bin (Second Stage Recycle bin) or Admin Recycle bin

             #Dispose Site object

             write-host "Administrator Recycle bin Items Deleted for:" $SPSite.RootWeb.title "`n"
Above code is fairly simple, and can be rewritten in C# also.
Empty SharePoint Recycle Bins Programmatically with PowerShell Empty SharePoint Recycle Bins Programmatically with PowerShell Reviewed by Salaudeen Rajack on 7:12 PM Rating: 5


  1. How do you run this Powershell in Sharepoint 2007?

  2. Nice script, thanks for sharing.
    But I have to note that it leaks memory as it does not dispose the SPSite and SPWeb objects. Details can be found here:

  3. Can this be modified to run on a single site collection and not the entire Web App?


Please Login and comment to get your questions answered!

Powered by Blogger.