[转]SharePoint 2010 Powershell Feature Cmdlets
In this installment its time to look at the various cmdlets that have to do with Features. Of course you can look at the UI to do this but its much, much easier to do this powershell and dare I say more fun.
Now keep in mind that this only related to FARM level features, I will cover Sandbox solutions and features next!
Listing features on Farm, Site Collection and Site
The main cmdlet used within powershell to list features is the Get-SPFeature cmdlets. To show all the features on the farm listed by display name and sorted use this:
1 |
Get-SPFeature | Sort -Property DisplayName |
To show all the features on the Farm grouped by scope in a table use:
1 |
Get-SPFeature | Sort -Property DisplayName, Scope | FT -GroupBy Scope DisplayName |
To see all features for a Web Application:
1 |
Get-SPFeature -WebApplication http://webapplication |
To see all features for a Site Collection:
1 |
Get-SPFeature -Site http://sitecollection |
To see all features for a Site:
1 |
Get-SPFeature -Web http://siteurl |
Remember for some more information relating to the features you can use:
1 |
Get-SPFeature -Web http://siteurl | Format-List |
To see all the members that a feature definition has use:
1 |
Get-SPFeature -Web http://siteurl | Get-Member |
Enabling and Disabling Features
To disable and enable features is all pretty easy once again using the Disable-SPFeature and Enable-SPFeature cmdlets but there is a trick. You need the name of the feature folder that contains the actual feature not what is displayed in the UI so be careful:
1 |
Enable-SPFeature -Identity "Hold" -URL http://url |
You can apply this to any Site and Site Collection scoped features.
Obviously to disable a feature just use the same syntax but with the Disable-Feature cmdlet
1 |
Disable-SPFeature -Identity "Hold" -URL http://url |
Remember though that the -Identity is the DisplayName property of the feature, not the text displayed on the UI which is actually retrieved from a resources file.
For example the Document Sets feature looks like below in the SharePoint interface:
But to actually enable it you have to use the following cmdlet:
1 |
Enable-SPFeature -Identity DocumentSet -URL http://url |
Installing and Uninstalling Features
1 |
Install-SPFeature "FeatureFolderName" |
To uninstall simply use the same Uninstall-Feature command with the same parameters:
1 |
UnInstall-SPFeature "FeatureFolderName" |