Please find the code to deactivate features at site collection level.
[System.Reflection.Assembly]::LoadWithPartialName("System.Xml") function Feature_Deactivation_sitecollection($featName) { try { [xml]$userfile = Get-Content C:\Site.xml Write-Log "Feature_Deactivation_sitecollection" "Process started.." foreach($site in $userfile.Sites.Site) { $url = $site.Url $spSite=Get-SPSite $url $Featuretobeactivated = Get-SPFeature -Site $spSite.Url | Where {$_.DisplayName -eq $featName} if($Featuretobeactivated -eq $null) { Write-Log "Feature_Deactivation_sitecollection" "Feature not active in "$site.Url Write-host -foregroundcolor green "Feature not found " } else { Disable-SPFeature -Identity $featName -Url $spSite.Url –Confirm:$false Write-Log "Feature_Deactivation_sitecollection" "Feature deactivated in site collection "$site.Url write-host -foregroundcolor green "Feature deactivated successfylly "$site.Url } } Write-Log "Feature_Deactivation_sitecollection" "Operation completed successfully.." write-host -foregroundcolor green "Operation completed succesfully.." } catch [System.Exception] { write-Host -foregroundcolor red "Exception: "$_.Exception } } function Write-Log($FunctionName,$message) { $now = Get-Date -Format "dd-MMM-yyyy HH:mm:ss" $now + "`t$message" >> .\$FunctionName.txt }Thank you !!
No comments:
Post a Comment