Add Sharepoint Snap-in if needed
By Anatoly Mironov
Just include it in your script or function:
if(-not(Get-PSSnapin |
Where { $_.Name -eq "Microsoft.SharePoint.PowerShell"})) {
Add-PSSnapin Microsoft.SharePoint.PowerShell}
By the way, I found it in PowerShell for Microsoft SharePoint 2010 Administrators by Niklas Goude and Mattias Karlsson. Powershell for Sharepoint Administrators. UPDATE: I found a better way to check a variable for null: Thomas Maurer. Powershell: check variable for null. It is like in javascript, just put it in the if-statement to test if it exists or not:
if($variable) {} #if exists
if(!$variable) {} #if not exists
So to add sharepoint snapin if needed, just run this:
$snapin = Get-PSSnapin | ? { $_.Name -eq "Microsoft.SharePoint.PowerShell"}
if(!$snapin) {
asnp Microsoft.SharePoint.PowerShell
}
Another example for checking if something exists, is to try get a site and remove it:
$url = "http://dev"
$site = get-spsite | ? { $_.Url -eq $url }
if($site) {
remove-spsite $url -confirm:$false
}