Sharepoint 2010 如何使用PowerShell从web部件库中删除web部件文件(例如abc.webpart)

Sharepoint 2010 如何使用PowerShell从web部件库中删除web部件文件(例如abc.webpart),sharepoint-2010,sharepoint-2013,Sharepoint 2010,Sharepoint 2013,即使在禁用和卸载SharePoint功能以及卸载和删除SharePoint解决方案后,.webpart文件仍会列在“Web部件库”中 我按以下顺序发出命令: Disable-SPFeature Uninstall-SPFeature Uninstall-SPSolution Remove-SPSolution 我仍然可以看到。Web部件文件到处都是。假设我知道web部件文件名(例如abc.webpart),我如何使用SharePoint PowerShell清理(完全删除)它们。此PowerS

即使在禁用和卸载SharePoint功能以及卸载和删除SharePoint解决方案后,.webpart文件仍会列在“Web部件库”中

我按以下顺序发出命令:

Disable-SPFeature
Uninstall-SPFeature
Uninstall-SPSolution
Remove-SPSolution

我仍然可以看到。Web部件文件到处都是。假设我知道web部件文件名(例如abc.webpart),我如何使用SharePoint PowerShell清理(完全删除)它们。

此PowerShell应该可以让您开始使用(它还没有准备好生产,但可以完成此工作)

$spQuery=新对象Microsoft.SharePoint.spQuery
$camlQuery='abc.webpart'
$spQuery.Query=$camlQuery
$site=获取SPSite-标识“http://site-collection-url"
$webpartgallery=$site.GetCatalog([Microsoft.SharePoint.SPListTemplateType]::WebPartCatalog)
$webparts=$webpartgallery.GetItems($spQuery)
$webparts[0]。回收()
$spQuery = New-Object Microsoft.SharePoint.SPQuery
$camlQuery = '<Where><Eq><FieldRef Name="FileLeafRef" /><Value Type="Text">abc.webpart</Value></Eq>  </Where>'
$spQuery.Query = $camlQuery

$site = Get-SPSite -Identity "http://site-collection-url"
$webpartgallery = $site.GetCatalog( [Microsoft.SharePoint.SPListTemplateType]::WebPartCatalog)
$webparts = $webpartgallery.GetItems($spQuery)
$webparts[0].Recycle()