Skip to content

Instantly share code, notes, and snippets.

@cchitsiang
Created November 12, 2013 09:47
Show Gist options
  • Save cchitsiang/7428213 to your computer and use it in GitHub Desktop.
Save cchitsiang/7428213 to your computer and use it in GitHub Desktop.
Usage
If you’re saving the script to a file, say “Remove-AllSPSolutions.ps1” then remember to load the script before invoking it with:
. .Remove-AllSPSolutions.ps1
You can uninstall all deployed solutions with the following command:
Uninstall-AllSPSolutions -Confirm
And then remove them with:
Remove-AllSPSolutions -Confirm
function Uninstall-AllSPSolutions {
param (
[switch] $Local,
[switch] $Confirm
)
Start-SPAssignment -Global;
foreach($solution in (Get-SPSolution | Where-Object { $_.Deployed })) {
write-host "Uninstalling Solution " $solution.Name;
if($solution.DeployedWebApplications.Count -gt 0) {
Uninstall-SPSolution $solution –AllWebApplications -Local:$Local -Confirm:$Confirm;
} else {
Uninstall-SPSolution $solution -Local:$Local -Confirm:$Confirm;
}
do {
Start-Sleep 5;
$solution = Get-SPSolution $solution;
} while($solution.JobExists -and $solution.Deployed)
}
Stop-SPAssignment -Global;
}
function Remove-AllSPSolutions {
param (
[switch] $Confirm
)
Get-SPSolution | Where-Object { !$_.Deployed } | Remove-SPSolution -Confirm:$Confirm
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment