Welcome to the navigation

Eiusmod ea pariatur, veniam, nulla aliqua, proident, reprehenderit eu ut officia tempor consectetur occaecat dolor enim cillum ad fugiat exercitation excepteur laboris est esse magna. Nisi fugiat nulla consequat, ut magna ipsum lorem consectetur qui dolore culpa dolor non ea ullamco do eu commodo irure esse adipisicing eiusmod voluptate amet

Yeah, this will be replaced... But please enjoy the search!

Start a full crawl in SharePoint using PowerShell

I needed a PowerShell script that performs a full crawl with the ability to target a specific content source.

This was the neat result

$snapin = Get-PSSnapin | Where-Object { $_.Name -eq "Microsoft.SharePoint.Powershell" }
if ($snapin -eq $null) {
    Write-Host "[INIT] Loading SharePoint Powershell Snapin"
    Add-PSSnapin "Microsoft.SharePoint.Powershell"
}
 
$searchApp = 
    Get-SPEnterpriseSearchCrawlContentSource -SearchApplication "Search Service Application" | 
    Where-Object { $_.Name -eq "Local SharePoint sites" }
 
if($searchApp.CrawlState -eq "Idle") {
    Write-Host "CrawlState was Idle, crawling Full" -ForegroundColor Green
    $searchApp.StartFullCrawl()
 
    Do {
        Write-Host "`r#" -ForegroundColor Yellow -NoNewline
        Start-Sleep 5
    } while ($searchApp.CrawlState -ne "Idle")
 
    Write-Host "`nFinsihed crawling" -ForegroundColor Green
 
} else{
    Write-Host "Didn't start crawl, CrawlState was"$searchApp.CrawlState -ForegroundColor Yellow
}

This will print a status while updating (the yellow hash signs)

 

All the params are in the script, enjoy